java - JSP:迭代列表并获取每个项目 (ForEach)

标签 java spring jsp spring-mvc

我很难用 jsp 迭代列表。我以速度执行了几次,但不知怎的,我无法让它与 jsp 一起工作。

这是我正在尝试开始工作的一个简单示例:

       @RequestMapping("/bye")
    public ModelAndView byeWorld() {
        String message = "Goodbye World, Spring 4.1.2!";

        List<Map<String, Object>> data = dataProvider.getVorgaengeGesamtByArkNr();

        model.put("table", data);
        model.put("columnNames", utils.getColumnNames(data));
        return new ModelAndView("test", model);
    }

utils.getColoumnNames 返回一个列表。

这是 .jsp 中的 lopp:

    <c:forEach var="entry" items="${columnNames}">
        <tr>
            entry
        </tr>
    </c:forEach>

响应如下所示:

    <c:forEach var="entry" items="[ARKNR_ABTEILUNG, LIEFERANT_ID, LIEFERANT_NAME, RECHNUNGS_NR, RECHNUNGS_DATUM, RECHNUNGS_EINGANG, STATUS_ID, STATUS_NAME_DE, RECHNUNGS_BETRAG_BRUTTO, RECHNUNGS_BETRAG_WAEHRUNG, SKONTO, WEITERBERECHNUNG, ARCHIV_ID, PROZESS_ID, AKTUELLER_BENUTZER, AKTUELLER_BENUTZER_ID, RECHNUNG_ID, KV_ID, ARKNR, DEPARTMENT_ID, FIBU_NAME, DBRD_ID]">
    <tr>
        entry
    </tr>
    </c:forEach>

所以列表只是替换 ${columnNames},根本不循环它。

    @SuppressWarnings("unchecked")
public static List<String> getColumnNames(List list) {
    if (list.size() > 0) {
        Map map = (Map)list.get(0);
        List<String> columnNames = new ArrayList<String>();

        for (Object entry : map.keySet())
        {
            logger.debugT(entry.toString());
            columnNames.add(entry.toString());
        }

        return columnNames;
    } else {
        return null;
    }
}

最佳答案

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<body>
    <h2>Example</h2>

    <c:if test="${not empty columnNames}">
         <h2>Columns</h2>
        <ul>
            <c:forEach var="col" items="${columnNames}">
                <li>${col}</li>
            </c:forEach>
        </ul>

    </c:if>
</body>
</html>

关于java - JSP:迭代列表并获取每个项目 (ForEach),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31425254/

相关文章:

java - 将页面的多个副本插入 PDF

java - 从字符串查询 JSP 中删除引号

java - 使用ajax从servlet获取json数组

java - 从 Spring JDBC 模板执行 SQL 文件

java - 我应该将我的实体 ID 放在 URL 中还是作为隐藏字段放入表单中?

java - 为 Restful 资源设计 DELETE 的最佳方法是什么

java - 让 Netbeans 将 war 文件自动部署到 tomcat

java - Java String.replace* 方法的时间复杂度是多少?

java - 在 libgdx 中移动对象

java - 为什么Java中没有SortedList?