第一种方法:
在jsp页面中使用jstl标签将long型的时间戳转换为格式化后的时间字符串
1.通过<jsp:useBean /> 导入java.util.Date类
2.通过<jsp:setProperty />为Date实例设置long型 time属性值
3.通过<fmt:formatDate />格式化Date实例
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> <jsp:useBean id="dateValue" class="java.util.Date"/> <jsp:setProperty name="dateValue" property="time" value="${timestampValue}"/> <fmt:formatDate value="${dateValue}" pattern="MM/dd/yyyy HH:mm"/> 例子: <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> <jsp:useBean id="dateValue" class="java.util.Date"/> 下方代码中: <td> <jsp:setProperty name="dateValue" property="time" value="${c.changetd}"/> <fmt:formatDate pattern="yyyy-MM-dd HH:mm:ss" value="${dateValue}" /> </td> 第二种方法: 2.long转成date:数据库里存储的是bigint型的时间,entity实体中存放的是long类型的标签,现在想输出到jsp页面,由于使用的是jstl标签,而要显示的是可读的时间类型,找来找去有个 fmt:formatDate可以转化,但是只能将String类型的转成date型,long型则不可以,觉得自定义标签比较靠谱,也不破环jsp页面这种标签结构,参考网上jstl标签编写方法,如下:
第一步 写一个类继承TagSupport,实现doStartTag() 方法。
package com.portx.util; import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Calendar; /** * 用于页面 jstl时间格式化s * Created by gmq on 2016/5/24. */ public class DateTag extends TagSupport { private static final long serialVersionUID = 6464168398214506236L; private String value; @Override public int doStartTag() throws JspException { String vv = "" + value; try { long time = Long.valueOf(vv.trim()); Calendar c = Calendar.getInstance(); c.setTimeInMillis(time); SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd HH:mm"); String s = dateformat.format(c.getTime()); pageContext.getOut().write(s); } catch (Exception e) { e.printStackTrace(); } return super.doStartTag(); } public void setValue(String value) { this.value = value; } }第二步 编写tld文件,datetag.tld,放在/WEB-INF/tld/目录下: <?xml version="1.0" encoding= "UTF-8"?> <taglib> <tlib-version>1.0</tlib-version> <jsp-version>1.2</jsp-version> <short-name>date</short-name> <tag> <name>date</name> <tag-class>com.portx.util.DateTag</tag-class> <body-content>JSP</body-content> <attribute> <name>value</name> <required>true</required> <rtexprvalue>true</rtexprvalue> </attribute> </tag> </taglib> 第三步 在web.xml中加入引用:<jsp-config> <taglib> <taglib-uri>/tags</taglib-uri> <taglib-location>/WEB-INF/tld/datetag.tld</taglib-location> </taglib> </jsp-config>
第四步 在jsp页面开始使用:
<%@ taglib uri="/tags" prefix="date"%> .... <date:date value ="${item.createdTime} "/>此时就可以把long转换成date类型的string了。