Jsp遍历对象列表

时间:2011-01-18 21:20:45

标签: java jsp jstl

我遇到了使用jsp槽列表/列表进行迭代的麻烦。这是我的对象类,名为Table:

public class Table{

private String name;
private List<String> columns;
private List<Row> rows;

... continuing with getters and setters nothing more here

}

在我的Row类中,我只有字符串(例如:字符串名称),没有列表没有任何内容。

目前我有一些List<Table>,我正在这样迭代:

<c:forEach var='table' items='${requestScope.tables}'>
        <c:out value="{table.name}"></c:out>
</c:forEach>

仅用于测试..并且它只打印{table.name}次x次(表列表中正确的表对象数)。

我的最终目标是这样的(伪代码):

for each table in table list
     print name
     for each column in colum list
         print column
     end column list for
     for each Row in row list
         print Row.name
     end row list for
end table list for

有人可以用语法帮助我吗?

2 个答案:

答案 0 :(得分:5)

<c:forEach var="table" items='${requestScope.tables}'>
        <c:out value="${table.name}"></c:out>

        <c:forEach var="column" items='${table.columns}'>
           <c:out value="${column}"></c:out>
        </c:forEach>

        <c:forEach var="row" items='${table.rows}'>
           <c:out value="${row.name}"></c:out>
        </c:forEach>

</c:forEach>

答案 1 :(得分:2)

你忘记了美元符号 - ${table.name}
此外,您应该使用双引号:var="table"