【问题标题】:Looping through List<HashMap<String,Object>> in JSP在 JSP 中循环 List<HashMap<String,Object>>
【发布时间】:2014-10-09 10:40:38
【问题描述】:

我有一个 java 方法,它从数据库表中返回我的联系信息,并且我将 List 中的每条记录保存为 HashMap (List&lt;HashMap&lt;String,Object&gt;&gt;)。每个 HashMap 包含近 10 个键值对(firstName、lastName、PhoneNumber、officeLocation 等)。我想使用这个列表在 JSP 中使用循环填充 HTML 表。但不知道该怎么做。尝试在谷歌上寻找可能的解决方案,但没有找到好的解决方案。

我的 JSP 中的脚本:

<jsp:scriptlet>
     PhoneListController controller = new PhoneListController();
     List<HashMap<String, Object>> totalResults = controller.getDataToDisplay();
     request.setAttribute("contactsList", totalResults);
</jsp:scriptlet>       

请指导我如何在 JSP 中进行此操作。

谢谢。

【问题讨论】:

    标签: jsp


    【解决方案1】:

    使用JSTL forEach 标签:

    <c:forEach var="map" items="${contactsList}">
        <tr>
            <td><c:out value="${map['firstName']}"/>
            <td><c:out value="${map['lastName']}"/>
            ...
        </tr>
    </c:forEach>
    

    一些注意事项:

    • scriptlet 已过时,10 多年来一直被认为是不好的做法。不要使用小脚本。使用 JSTL 和 JSP EL。您在问题中发布的代码应位于控制器 servlet 中。
    • 为什么使用 HashMap 来存储联系信息。您应该定义一个名为Contact 的Java Bean 类,并返回一个List&lt;Contact&gt;。 Java 是一种面向对象的语言。定义和使用对象。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-16
      • 2018-02-25
      • 1970-01-01
      • 2018-09-22
      • 1970-01-01
      • 2017-12-15
      • 1970-01-01
      • 2016-01-12
      相关资源
      最近更新 更多