JSTL foreach - 具有特定字段的排序列表

时间:2013-10-04 08:06:24

标签: java jsp jstl

我正在显示以下3个字段userid,value& upadtetime,我想按顺序按UPDATE.TIME排序。请建议如何做到这一点。

<c:forEach var="comment" items="${document['kcmeta/comment']}">

<g2:out value="${mm:MasterValue('datamodel_userInfo',comment.USER_ID)}"/>

<c:out value="${comment.VALUE}" />

<span class="searhResultLightGrayText"><c:out value="${comment.UPDATE_DATE}" /></span>          
</c:forEach>

1 个答案:

答案 0 :(得分:0)

您无法使用c:forEach JSTL 标记对任何类型的集合进行排序,但是您可以使用 Scriplets 处理此问题并将JAVA代码嵌入到JSP中。

<%
    Collections.sort(yourList, new Comparator<Document>() {
        public int compare (Document d1, Document d2) {
            return d1.getUpdateTime().compare(d2.getUpdateTime());
        }
    });
%>

然后您就可以遍历排序列表:

<c:forEach var="comment" items="<%=youList%>">
    ...
</c:forEach>