java - 如何在 JSTL 中访问包含列表的 Map 的内部元素?

标签 java jsp jstl

我有一个列表 MyBean1在请求范围内(它们的名称为 tests )。 MyBean1有一个类型为 Map<Integer, List<MyBean2>> 的参数,可通过方法调用 getMap() 访问。该 map 的键是从 1 到 6 的数字。 MyBean2有一个方法getValue()它返回一个字符串。

我需要将每个列表的值放入同一个表格单元格中。

我写了这样的东西:

<c:forEach var="test" items="${tests}">
    // some stuff
    <td><c:forEach var="bean" items="S{test.map[1]}">${bean.value} </c:forEach></td>
    // repeat for keys to 2 to 6
</c:forEach>

但这似乎不起作用。我没有收到value map 中键 1 处包含的列表的字段。

我做错了什么吗?

我使用 Spring MVC 作为 MVC 框架,我可以从中获取其他字段 test变量。

谢谢。

最佳答案

参见EL access a map value by Integer key来解释为什么它不起作用。

如果您的映射是排序映射或 LinkedHashMap,则迭代其条目可能会起作用:

<td><c:forEach var="entry" items="${test.map}">
        <c:forEach var="bean" items="${entry.value}">${bean.value}</c:forEach>
    </c:forEach></td>

关于java - 如何在 JSTL 中访问包含列表的 Map 的内部元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7030075/

相关文章:

java - 在 ExtJS 中显示

java - 如何使用 Java 在 Google App Engine 中发送电子邮件

java - 使用 "JSF"或 JSTL 标签迭代 java.util.Map 时出现问题

jsp - Tomcat 5.5 和 JSTL 1.2 上的 ELException

Java-Swing 和 Windows 文本大小 : fix the size of components

java - Apache Ant 有条件地从模板复制文件并加载属性

java - jackson : Pojo property multitype

java - 如何检查字符串是否包含字符序列和反斜杠 "\"?

Java-Spring-JSP 下载 xls 文件 - POST 正常,GET 不起作用

java - 是 :url (in Struts2) not do url-rewriting like c:url does in case cookies are disabled?