首先写有一个servlet
package com.atguigu.servlet;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.atguigu.bean.User;
/**
*/
public class ListServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1、获取用户的请求[用户访问此servlet只是为了获取所有的用户信息的集合]
//2、使用Service+Dao 从数据库中查找用户的信息
//模拟创建一个LIst<User>
List<User> list = new ArrayList<User>();
for (int i = 0; i < 10; i++) {
list.add(new User(i, "lihong"+i, "123456"+i, "[email protected]"));
}
//3、如果希望其他的web资源能够使用list数据,需要就数据存到域中
request.setAttribute("userlist", list);
//4、转发到list.jsp页面显示集合中的数据
request.getRequestDispatcher("/WEB-INF/list/list.jsp").forward(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
然后写一个jsp接收servlet传过来的信息
<%@page import="java.util.ArrayList"%>
<%@page import="com.atguigu.bean.User"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<!-- 获取Servlet中的list集合,遍历显示到表格中
list.jsp页面不希望用户能够直接访问
凡是不让用户直接访问的,都放到web-inf中
服务器可以访问[通过转发可以访问web-inf下的资源]
-->
<%
//获取list域中存的list集合
List<User> list = (ArrayList<User>) request.getAttribute("userlist");
if (list != null) {
%>
<table border="1" width="70%">
<tr>
<td>id</td>
<td>账号</td>
<td>密码</td>
<td>邮箱</td>
</tr>
<%
//遍历之前
//判断集合是否为空
for (User user : list) {
//没遍历一次创建一行显示一个User的信息
%>
<tr>
<td><%=user.getId()%></td>
<td><%=user.getUsername()%></td>
<td><%=user.getPassword()%></td>
<td><%=user.getEmail()%></td>
</tr>
<%
}
%>
</table>
<%
} else {
%>
<h2>没有查询到员工信息,一定是打开方式错了!!!</h2>
<%
}
%>
</body>
</html>