Java集合如何在JSP中展示
目录
Java集合如何在JSP中展示
1. Java集合如何在JSP中展示
1.1 JSP遍历Java中的List、Set集合
现Java中有如下的数据,通过ModelAndView绑定传到JSP页面
public ModelAndView userList() {
List<String> userList = new ArrayList<>();
userList.add("张三");
userList.add("李四");
userList.add("王二麻子");
ModelAndView model = new ModelAndView();
model.addObject("userList", userList);
model.setViewName("usersPage");
return model;
}
下面展示usersPage.jsp页面如何遍历users。
<c:forEach var="user" items="${userList}" varStatus="loop">
<p>
${loop.index},${user}
</p>
</c:forEach>
结果是
0, 张三
1, 李四
2, 王二麻子
现在解释一下
<c:forEach>
中几个参数的意义。在讲这些参数前,先来看看Java中的forEach
上面JSP里面循环意思和下面Java中的代码意思差不多。
for (String user : userList) {
System.out.println(user);
}
所以,var就是所遍历集合中的每一个对象,items就是遍历的集合,varStatus是遍历的次数,如上展示的用
${loop.index}
就可以得到遍历下标。
1.2 遍历Map集合
其实遍历List、Set、Map集合都是差不多的,只不过Map中的元素是key-value的,那么如何获取呢
现Java中有如下数据
public ModelAndView userList() {
Map<String, String> maps = new HashMap<>();
maps.put("username", "root");
maps.put("password", "123456");
ModelAndView model = new ModelAndView();
model.addObject("maps", maps);
model.setViewName("usersPage");
return model;
}
现展示usersPage.jsp中如何显示数据
<c:forEach var="map" items="${maps}">
<p>
${map.key}:${map.value}
</p>
</c:forEach>
结果
username:root
password:123456