M:model PersonDao
V:view list.jsp
C:Control ListServlet
要求:从数据库读取信息(初始化),输出到网页上
PersonDao.java
package dao;
import java.util.ArrayList;
import java.util.List;
import pojo.Person;
public class PersonDao {
public void savePerson(Person per) {
//保存数据库的操作
System.out.println(per+" 已保存到数据库!");
}
public boolean login(String name,String pwd) {
//数据库校验
if (name.startsWith("it")&&pwd.startsWith("123")) {
return true;
}
else {
return false;
}
}
public List<Person> list(){
List<Person> list=new ArrayList<>();
for(int i=0;i<10;i++) {
Person per=new Person();
per.setName("jack"+i);
per.setJiguan("jn"+i);
list.add(per);
}
return list;
}
}
定义list函数,代替从数据库中获取数据的过程。随机初始十组数据。
ListServlet.java
import java.io.IOException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import dao.PersonDao;
import pojo.Person;
/**
* Servlet implementation class ListServlet
*/
@WebServlet("/list")
public class ListServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
PersonDao dao=new PersonDao();
List<Person> list = dao.list();
request.setAttribute("list", list);
request.getRequestDispatcher("list.jsp").forward(request, response);
}
}
从数据库中获取list数据,并用setAttribute请求将数据封装进request中,并用客户端重定向将数据传输到list.jsp中
list.jsp
<%@page import="pojo.Person"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
List<Person> list=(List<Person>)request.getAttribute("list");
%>
<table>
<tr>
<th>用户名</th>
<th>籍贯</th>
</tr>
<%
for(Person per:list){
%>
<tr>
<td><%=per.getName() %></td>
<td><%=per.getJiguan() %></td>
</tr>
<%} %>
</table>
</body>
</html>
运行:http://localhost:8080/0105/list
结果: