jsp中格式化long类型的时间戳

1、使用java脚本。

	<% 
   	Long time = (Long)request.getAttribute("longtime");
   	Date date=new Date(time); 
   	SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
   	String timeStr = sdf.format(date);
	out.println(timeStr); 
	%> 
这里使用到了Date和SimpleDateFormat这两个类,需要在jsp前面使用import引用这两个类。

<%@ page language="java" import="java.util.*,java.text.*" pageEncoding="utf-8"%>
上面的代码,在jsp中耦合度高,维护起来也相对复杂。

2、使用<jsp:useBean>

	<jsp:useBean id="timestamp" class="java.util.Date"/>
	<jsp:setProperty name="timestamp" property="time" value="${longtime}"/>
	<fmt:formatDate value="${timestamp}" pattern="MM/dd/yyyy HH:mm:ss"/>
<jsp:useBean>标签用于在指定的域范围内查找指定名称的JavaBean对象:
如果存在则直接返回该JavaBean对象的引用。 如果不存在则实例化一个新的JavaBean对象并将它以指定的名称存储到指定的域范围中。 
常用语法:
<jsp:useBean id="beanName" class="package.class" scope="page|request|session|application"/>
id属性用于指定JavaBean实例对象的引用名称和其存储在域范围中的名称。
class属性用于指定JavaBean的完整类名(即必须带有包名)。

scope属性用于指定JavaBean实例对象所存储的域范围,其取值只能是page、request、session和application等四个值中的一个,其默认值是page。


对比第一种方法:

  1. useBean不需要import导包
  2. useBean直接产生一个类的实例,而import是声明对一个类的引用,并没有立即产生一个类的实例。
3、js里获取时间戳
  
var timestamp = Date.parse(new Date());
var timestamp = (new Date()).valueOf();
当然也可以使用
 
  
var timestamp = <%=System.currentTimeMillis()%>;
 
  





猜你喜欢

转载自blog.csdn.net/blq4411568/article/details/75675967
今日推荐