在集合中创建一个Map对象
DataServlet中把请求转发给data.jsp然后在data.jsp中使用EL表达式遍历Map
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Map<String,Integer> map = new HashMap<>();
map.put("zhangsan", 23);
map.put("lisi", 18);
map.put("wangwu", 32);
request.setAttribute("map", map);
request.getRequestDispatcher("/data.jsp").forward(request, response);
}
<%@page import="com.zzu.ov.Student"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:forEach var="m" items="${map }">
${m.key } ---> ${m.value } <br>
</c:forEach>
</body>
</html>
注意:
1、Map集合的key最好符合Java标识符规范,如果不符合,则在EL表达式中不能使用.的方式获取到Map相应的value,只能通过[]的方式获取到相应的value;
2、Map集合key的泛型不能是Java基本数据类型的包装类,否则EL表达式无论使用那种方式都无法获取到相应的value。