1、forEach标签元素
<c:forEach items="接收集合对象" var="迭代参数名称" varStatus="迭代状态,可访问迭代自身信息">
2、 使用forEach标签时需要在JSP页面中引入JSTL标签库,如下:
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
3、forEach标签使用实例
1)UserService.java中的getallUser()方法查询用户信息
public List<userEntity> getallUser(){ conn=dao.getConnection(); List<userEntity> list=new ArrayList<userEntity>(); String sql="select * from t_user"; try { ps=conn.prepareStatement(sql); rs=ps.executeQuery(); while (rs.next()) { userEntity user=new userEntity(); user.setUid(rs.getInt("u_id")); user.setUname(rs.getString("u_name")); user.setUsername(rs.getString("u_username")); user.setPassword(rs.getString("u_password")); user.setAddress(rs.getString("u_addres")); user.setIphome(rs.getString("u_iphone")); list.add(user); } } catch (SQLException e) { e.printStackTrace(); } return list; }
2)logServlet .java主要用来将查询到用户信息保存到Session对象中,用来进行输出
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=utf-8"); UserService service = new UserService(); List<userEntity> list = service.getallUser(); // 将查询出来的用户信息保存到session对象中 HttpSession session = request.getSession(); session.setAttribute("userlist", list); }
3)allpage.jsp使用forEace迭代标签结合EL表达式 将保存到session对象中的用户信息取出且输出到页面中
<c:forEach items="${sessionScope.userlist}" var="user"> <tr> <td>${user.uid}</td> <td>${user.uname}</td> <td>${user.username}</td> <td>${user.password}</td> <td>${user.address}</td> <td>${user.iphome}</td> </tr> </c:forEach>