java - 无法迭代 HashMap 键?

标签 java jsp struts2 ognl

我有一个像这样定义的HashMap

linkcategory = new HashMap<Integer, List<CategoryTable>>();

正如您所看到的,每个键都指向一个 List 对象。当我尝试迭代关键时,什么也没有出现。这是我的 JSP 代码。

<s:iterator value="linkcategory[#linklist.linkid]">
    <small>
        <span class="label label-info">
           <s:iterator value="value">
               <s:property value="categoryname"/>
           </s:iterator>      
        </span>
    </small>
</s:iterator>

目的是打印每个链接的类别。因此,我不想迭代每个链接的列表,而是想从 map 中获取与链接相对应的类别列表,并仅打印该列表。

最佳答案

您可以在操作类中定义一个属性linkid,并使用它通过键获取类别列表,然后迭代类别。

<s:iterator value="linkcategory[linkid]">
  <small><span class="label label-info">
    <s:property value="categoryname"/>     
  </span></small>
</s:iterator>

关于java - 无法迭代 HashMap 键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22276560/

相关文章:

javascript - 使用 javascript 访问 JSP 对象

jsp - Web 应用程序停止时无法注销 JDBC

mysql - jsp mysql服务器连接超时

java - 扩展 Struts 框架的 FilterDispatcher 是一个好的实践吗?

java - 如何在 Struts2 中定义 StreamResult 的输出名称?

java - 当使用架构验证无效 XML 时,为什么我没有得到异常?

java - org.postgresql.util.PSQLException : ERROR: relation "sequence-gen" does not exist

java - 在 Linux 上部署到 Tomcat 时出现 JSF PropertyNotFound

java - 在 Struts 2 中使用 UrlRewrite 设置参数变量

Java 监听器不工作,除非我按 Enter 键,如何在文本框更改后使其工作