LoginCookie.java 1 package com.bjsxt.cookie; 2 3 import java.io.IOException; 4 import java.net.URLDecoder; 5 import java.net.URLEncoder; 6 7 import javax.servlet.ServletException; 8 import javax.servlet.annotation.WebServlet; 9 import javax.servlet.http.Cookie;10 import javax.servlet.http.HttpServlet;11 import javax.servlet.http.HttpServletRequest;12 import javax.servlet.http.HttpServletResponse;13 14 /**15 * Servlet implementation class LoginCookie16 */17 @WebServlet("/LoginCookie")18 public class LoginCookie extends HttpServlet {19 20 @Override21 protected void service(HttpServletRequest req, HttpServletResponse resp)22 throws ServletException, IOException {23 System.out.println("LoginCookie.service()");24 25 //处理中文乱码26 req.setCharacterEncoding("utf-8");27 resp.setCharacterEncoding("utf-8");28 resp.setContentType("text/html;charset=utf-8");29 30 //获取请求参数31 String name=req.getParameter("uname");32 String pwd=req.getParameter("pwd");33 String check=req.getParameter("che");34 35 //处理业务36 //1:判断是否选择三天免登录37 if(check!=null&&"yes".equals(check)){38 //判断用户名和密码是否为空39 if((name!=null&&!"".equals(name))&&(pwd!=null&&!"".equals(pwd))){40 //设置cookie,保存在客户端的硬盘中41 42 Cookie cookiename=new Cookie("cookiename",URLEncoder.encode(name,"utf-8"));43 Cookie cookiepwd=new Cookie("cookiename",URLEncoder.encode(pwd,"utf-8"));44 System.out.println("LoginCookie.service(存储cookie)");45 //设置cookie的有效期46 cookiename.setMaxAge(3*24*3600);47 cookiepwd.setMaxAge(3*24*3600);48 49 //设置访问路径50 cookiename.setPath(req.getContextPath()+"/LoginCookie");51 cookiepwd.setPath(req.getContextPath()+"/LoginCookie");52 53 //发送给浏览器客户端54 resp.addCookie(cookiename);55 resp.addCookie(cookiepwd);56 }57 58 //如果用户名和密码为空,从客户端硬盘中读取cookie59 if((name==null||"".equals(name))||(pwd==null||"".equals(pwd))){60 //读取cookie61 Cookie[] cookies=req.getCookies();62 //过滤出用户名和密码63 if(cookies!=null&&cookies.length>0){64 for(int i=0;i
index.jsp 1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 4 5 6 728 29Insert title here 8 9 10