package day01.cookies;import java.io.IOException;import java.net.URLDecoder;import java.net.URLEncoder;import java.text.SimpleDateFormat;import java.util.Date;import javax.servlet.ServletException;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** * 记录用户上次访问的时间 * * @author mzy * */public class LastTimeServlet extends HttpServlet { private static final long serialVersionUID = 613621422104403409L; public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); Cookie[] cookies = request.getCookies(); String lastTime = null; SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日hh时mm分ss秒"); String nowTime = sdf.format(new Date()); if(cookies != null) { for(Cookie cookie : cookies) { if("lastTime".equals(cookie.getName())) { response.getWriter().write("欢迎您再次访问本站,当前时间为:"+nowTime+""); lastTime = cookie.getValue(); response.getWriter().write("您上次访问的时间为:"+URLDecoder.decode(lastTime, "utf-8")); // Cookie c = new Cookie("lastTime", URLEncoder.encode(nowTime, "utf-8")); // response.addCookie(c); cookie.setValue(URLEncoder.encode(nowTime, "utf-8")); response.addCookie(cookie); break; } } } // cookie虽然不为空,但是并没有我们需要的lastTime数据 if(cookies == null || lastTime == null ) { response.getWriter().write("欢迎您首次访问本站,当前的时间为:"+nowTime); // 并不需要lastTime数据,因为我们得到lastTime实际是从cookie中获取的 // lastTime = nowTime; Cookie c = new Cookie("lastTime", URLEncoder.encode(lastTime, "utf-8")); response.addCookie(c); } } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); }}