import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.validation.constraints.Null; /** * Servlet implementation class rLogin */ @WebServlet("/rLogin") public class rLogin extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public rLogin() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //设置请求和响应的字符集编码 response.setContentType("text/html; charset=UTF-8"); request.setCharacterEncoding("UTF-8"); PrintWriter out = response.getWriter(); //获得输出流 String strID=request.getParameter("uid"); String strPassword=request.getParameter("upassword"); String isRemember=request.getParameter("rememberMe"); boolean isExist=false; boolean isLogin=false; //校验Cookie中有无登录名信息 Cookie[] cookies=request.getCookies(); if (cookies==null){ out.print("没有Cookie"); } else { for(int i=0;i<cookies.length;i++){ if(cookies[i].getName().equals("uid")); isExist=true; out.println("拥有Cookie"); } } //检查登录信息是否正确 if("tom".equals(strID)&&"123".equals(strPassword)){ isLogin=true; } //若已选择记住我且Cookie中无信息,则写入Cookie信息 if("yes".equals(isRemember)&&isExist==false&&isLogin==true){ Cookie user_id=new Cookie("uid", strID); Cookie user_password=new Cookie("upassword", strPassword); user_id.setMaxAge(60*60*24*30); user_password.setMaxAge(60*60*24*30); response.addCookie(user_id); response.addCookie(user_password); } if(isExist&&!"yes".equals(isRemember)&&isLogin==false){ out.println("登录失败"); } //登录信息正确或Cookie中有数据,都可登录 else if(isExist||isLogin){ out.println("成功登录"); } else{ out.println("登录失败"); } } }