1、Login.jspLogin.htmlLoginNamePasswordCheckLogin.javapackage com;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.RequestDispatcher;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.ht
2、tp.HttpServletResponse;import javax.servlet.http.HttpSession;import com.hnsfxy.dao.IAdminDao;import com.hnsfxy.dao.impl.AdminDaoImpl;public class CheckLogin extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException / 编码问题respo
3、nse.setContentType(“text/html;charset=GBK“);/ 浏览器显示的编码,默认的是isoresponse.setCharacterEncoding(“GBK“);/ 浏览器到数据库取数据时候使用的编码request.setCharacterEncoding(“GBK“);/ 浏览器到数据库存入数据时候所使用的编码方式/ 2 首先在一個 servlet 中通过 request 获得 session 对象(可以是来自 html 的请求)sessionHttpSession session = request.getSession();/ 3 设置 session
4、 超时间隔为 60 秒 sessionsession.setMaxInactiveInterval(60);/ 获取表单的值/不要.trim()String name = request.getParameter(“user“).trim();在 IE 中输入 check时候,会出现 NullPointException/以下部分如果 name 为空或者在 IE 中输入 check 的时候会跳转到 Login.jsp 中去String name = request.getParameter(“user“);String password = request.getParameter(“pwd“
5、);if (name = null | name.trim().equals(“) | password = null| password.equals(“) / 跳转回去RequestDispatcher rd = request.getRequestDispatcher(“./Login.jsp“);rd.forward(request, response);/ 跳到登陆页面 else / 调用 dao 层的方法进行判断IAdminDao admin = new AdminDaoImpl();if (admin.checkLogin(name, password) = 0) /成功登陆/否
6、则将 name password 加入到 session 中去session.setAttribute(“name“, name);/ 把输入的用户名添加到 session 中session.setAttribute(“pwd“, password);/ 把输入的用户名添加到 session 中response.sendRedirect(“/Login/selectAll“); else if (admin.checkLogin(name, password) = 1) / request.setAttribute(“error“,“密码错误!“);response.sendRedirect(
7、“./Login.jsp“); else if(admin.checkLogin(name, password) = 2) / request.setAttribute(“2“,“用户不存在,请先注册!“);response.sendRedirect(“./Login.jsp“);public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException doGet(request, response);SelAll.javapackage co
8、m;import java.io.IOException;import java.io.PrintWriter;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 javax.servlet.http.Ht
9、tpSession;import com.hnsfxy.dao.IPersonDao;import com.hnsfxy.dao.impl.PersonDaoImpl;import com.hnsfxy.entity.Person;public class SelAll extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException / 编码问题response.setContentType(“t
10、ext/html;charset=GBK“);/ 浏览器显示的编码,默认的是isoresponse.setCharacterEncoding(“GBK“);/ 浏览器到数据库取数据时候使用的编码request.setCharacterEncoding(“GBK“);/ 浏览器到数据库存入数据时候所使用的编码方式PrintWriter out = response.getWriter();/ 1 不同的请求在同一個 session 对象中传值 创建 session 对象(通过 request)HttpSession session = request.getSession();/ 2 获取另外一
11、个 servlet 中的 session 的值String sessionName = (String) session.getAttribute(“name“);String sessionPwd = (String) session.getAttribute(“pwd“);if (null = sessionName | “.equals(sessionName) | null = sessionPwd| “.equals(sessionPwd) response.sendRedirect(“./Login.jsp“);/ 跳到登陆页面return;List list = new Arra
12、yList();IPersonDao person = new PersonDaoImpl();list = person.selAllPerson();request.setAttribute(“list“,list);request.getRequestDispatcher(“./SelAll.jsp“).forward(request, response);public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException doGet(request, response);SelAll.jspJsp+Servlet+DaoJSP查询 所有的记录用 户ID用 户名年 龄地址 操作 “删除&username=&age=&address=“修改添加联系人web.xmlCheckLogincom.CheckLoginCheckLogin/checkSelAllcom.SelAllSelAll/selectAllLogin.jsp