JSP页面中的时间显示问题

在JSP页面中往往要将时间显示为指定格式的,如果传入的是Date类型很好解决

<fmt:formatDate value="${orderTime}" pattern="yyyy-MM-dd HH:mm:ss" />

但是对于传入的是String类型就要注意了

<fmt:formatDate value="**" pattern="*****" />这里的value只能是Date类型

要先将出入的String类型转为Date类型,然后才能格式化显示

如传入的是“2017-10-30 18:20:36”

<c:set var="date" value="2017-10-30 18:20:36"/>
<fmt:parseDate value="${date}" var="orderTime" pattern="yyyy-MM-dd HH:mm:ss"/>
<fmt:formatDate value="${orderTime}" pattern="yyyy-MM-dd HH:mm:ss" />

这里同样也有一个问题要注意

<fmt:parseDate value="**" var="orderTime" pattern="****"/>这里的pattern的对应value的格式

即:在格式化字符型时间为日期型时,需要将格式设置一致才可以。

<c:set var="date" value="20180124183806"/>
<fmt:parseDate value="${date}" var="orderTime" pattern="yyyyMMddHHmmss"/>       //正确
<fmt:parseDate value="${date}" var="orderTime" pattern="yyyy-MM-dd HH:mm:ss"/>  //错误
<fmt:formatDate value="${orderTime}" pattern="yyyy-MM-dd HH:mm:ss" /></td>
                           

原文地址:https://www.cnblogs.com/onlymate/p/8350015.html