[英]Iterate over Map object using JSTL
Is it possible to implement the following using plain JSTL: 是否可以使用普通的JSTL实现以下内容:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<table>
<%
java.util.Map msgMap = (java.util.Map) request.getAttribute("messageMap");
for(int loopCount=1;loopCount>0;loopCount++) {
if(msgMap.containsKey("/packagesBO/packages["+loopCount+"]/packageId")) {
%>
<tr>
<td><%=msgMap.get("/packagesBO/packages["+loopCount+"]/packageName")%></td>
</tr>
<%
}
else {
break;
}
}
%>
</table>
Yes it is have a look at c:forEach and c:if and expression language. 是的,可以看看c:forEach和c:if和表达式语言。 Here an example (not tested):
这是一个示例(未经测试):
<table>
<c:forEach var="entry" items="${messageMap}" varStatus="num">
<c:if test=${messageMap['/packagesBO/packages["+num.count+"]/packageId']}>
<tr>
<td><c:out value="${messageMap['/packagesBO/packages[\"+num.count+\"]/packageId']"}/></td>
</tr>
</c:if>
</c:forEach>
</table>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.