JSTL访问c:set变量并使用SimpleDateFormat进行转换

时间:2015-08-03 07:30:54

标签: jsp jstl

我有以下源代码:

<c:set var="runtimeEnd" value="${content.valueList.Promotion[0].value.RuntimeEnd}"/>

这是jsp中的数字,代表日期,例如:1425769140000

如何在Java中访问此变量? imean当我执行以下操作时它甚至不再加载页面:

<% out.println(${runtimeEnd}); %>

我想将变量插入到以下JAVA代码中以显示日期

<% SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd MMMMMMMMM yyyy");
out.println(simpleDateFormat.format(${runtimeEnd})); %>

1 个答案:

答案 0 :(得分:1)

为什么要使用scriplets?如果您已经开始使用它,请使用jstl库。

JSTL Format Date库似乎就是您所需要的。

示例:

<c:set var="runtimeEnd" value="${content.valueList.Promotion[0].value.RuntimeEnd}"/>
<fmt:formatDate pattern="yyyy-MM-dd" value="${runtimeEnd}" />

P.S。要使用jstl库打印变量,请使用<c:out value="This will be printed" />标记。

Scriplets方法:

印刷:

 <%=pageContext.getAttribute("runtimeEnd") %>

格式化:

<% SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd-MM-yyyy"); 
String convertedDate = String.valueOf(pageContext.getAttribute("runtimeEnd"));
%>
<%=simpleDateFormat.format(convertedDate); %>