通过Java List迭代

时间:2016-06-08 18:33:38

标签: java list multidimensional-array

我正在编写一个Spring MVC Web应用程序

我使用

填充List
List items = jdbcTemplate.queryForList(query);

现在,当我使用ViewJSTL打印时,它看起来像这样:

[{id=1, name=John, status=1}, {id=2, name=Smith, status=1}]

同样,在JSTL我可以像这样迭代它:

<c:forEach var="item" items="${items}">
    ${item.id}, ${item.name}, ${item.status}
</c:forEach>

我想在Controller中做同样的事情才能获得id

List list = "";

for (int i = 0; i < items.size(); i++) {
    list += items.get(i) + ",";
}

但是如何从单元格中获取id?

1 个答案:

答案 0 :(得分:4)

问题是你这样做:

List items = jdbcTemplate.queryForList(query);

这意味着,您将List声明为原始数据持有者(顺便说一句,这是一种不好的做法)

如果您改为

List<Map<String, Object>> items = jdbcTemplate.queryForList(query);

然后你可以轻松做一些像

这样的事情
List<Map<String, Object>> myFooList = new ArrayList<Map<String, Object>>();
    for (Map<String, Object> map : myFooList) {
        // your index here like foo.getId()
    }
相关问题