使用JSP Scriptlet和JSON Model属性

时间:2013-12-11 08:44:09

标签: java json jsp date scriplets

我从JSON响应中获取一个属性/参数作为EPOCH时间变量。 我想转换为dd/MM/yyyy hh:mm:ss格式并显示在表格中

<tbody>
    <c:if
        test="${not empty jsonResult && not empty jsonResult.records}">
        <c:forEach items="${jsonResult.records}" var="record">
            <tr>
                <td style="width:15%;"><img src="${record.attributes.P_Image_Path}" class="img-responsive" /></td>
                <td style="width:15%;">${record.attributes.P_Description}</td>
                <td style="width:55%;">${record.attributes.P_Username_Seller}</td>
                <%
                    java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
                    System.out.println(sdf.format( new java.util.Date(${record.attributes.P_Close_Time}));
                %>
                <td style="width:15%;">${record.attributes.P_Close_Time}</td>
            </tr>
        </c:forEach>
    </c:if>
</tbody>

但它无法编译JSP。我找不到如何使用来自JSON

的scriplet和model属性值的组合

更新 试过这个 - 不工作

<c:set var="now" value="<%=new java.util.Date(${record.attributes.P_Close_Time}%>" />
<td style="width: 15%;"><fmt:formatDate pattern="dd/MM/yyyy hh:mm:ss" value="${now}" /></td>

试过这个 - 不工作

<td style="width: 15%;"><fmt:formatDate pattern="dd/MM/yyyy hh:mm:ss" value="<%=new java.util.Date(${record.attributes.P_Close_Time})%>" /></td>

试过这个 - 不工作

<td style="width: 15%;"><fmt:formatDate pattern="dd/MM/yyyy hh:mm:ss" value="<%=new java.util.Date(record.attributes.P_Close_Time)>" /></td>

2 个答案:

答案 0 :(得分:1)

您可以使用JSTL标记

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>


<fmt:formatDate pattern="dd/MM/yyyy hh:mm:ss" value="${now}" />

http://www.tutorialspoint.com/jsp/jstl_format_formatdate_tag.htm

答案 1 :(得分:0)

<%
    SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
    Record record = (Record) pageContext.getAttribute("record");
    System.out.println(sdf.format(new Date(record.getAttributes().getP_Close_Time())));
%>

第w!请使用此代码打印类并发布结果,以便我可以找出您正在使用的类:

<tbody>
    <c:if
        test="${not empty jsonResult && not empty jsonResult.records}">
        <c:forEach items="${jsonResult.records}" var="record">
            <tr>
                <td style="width:15%;"><img src="${record.attributes.P_Image_Path}" class="img-responsive" /></td>
                <td style="width:15%;">${record.attributes.P_Description}</td>
                <td style="width:55%;">${record.attributes.P_Username_Seller}</td>
                <%
                    //java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
                    //System.out.println(sdf.format( new java.util.Date(${record.attributes.P_Close_Time}));
                    Object record = pageContext.getAttribute("record");
                    System.out.println("page record: " + (record == null ? null : record.getClass().getName()));
                %>
                <td style="width:15%;">${record.attributes.P_Close_Time}</td>
            </tr>
        </c:forEach>
    </c:if>
</tbody>