jstl标签的fmt:formatDate格式化日期 String to Date

时间:2023-03-08 18:47:17
jstl标签的fmt:formatDate格式化日期 String to Date

使用fmt函数需在jsp中引入

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<fmt:formatDate value="${entity.ctime}" pattern="yyyy-MM-dd HH:mm"/>

报java.lang.IllegalArgumentException: Cannot convert 201311251525 of type class java.lang.String to class java.util.Date

异常    因为${entity.ctime}取出来是String类型,无法转换为Date类型

如下将能正常输出

<fmt:formatDate value="<%=new Date() %>" pattern="yyyy-MM-dd"/>

解决办法是,可先将String解析为Date 然后再格式化Date

<fmt:parseDate value="${entity.ctime}" var="date" pattern="yyyyMMddHHmm"/>

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