package com.rlovep.serlvet; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; 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; /** * Servlet implementation class CookieDemo */ @WebServlet("/CookieDemo") public class CookieDemo extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { /*//1.创建cookie对象 Cookie cookie=new Cookie("name", "pace"); Cookie cookie2=new Cookie("name", "sisi"); //2.设置cookie的有效路径,默认情况下有效路径在当前web应用下。/Httpser cookie2.setPath("/Httpser2"); *//** * 2)设置cookie的有效时间 * 正整数:表示cookie数据保存浏览器的缓存目录(硬盘中),数值表示保存的时间。 负整数:表示cookie数据保存浏览器的内存中。浏览器关闭cookie就丢失了!! 零:表示删除同名的cookie数据 *//* //cookie2.setMaxAge(-1);//cookie2保存在内存 cookie.setMaxAge(20); response.addCookie(cookie); //response.addCookie(cookie2); //接收cookie的信息; Cookie[] cookies = request.getCookies(); //注意:判断null,否则空指针 if(cookies!=null){ //遍历 for(Cookie c:cookies){ String name = c.getName(); String value = c.getValue(); String path=c.getPath(); int age=c.getMaxAge(); System.out.println(name+"="+value); System.out.println("path:"+path); System.out.println("age:"+age); } }else{ System.out.println("没有接收cookie数据"); }*/ //获取当前时间 response.setCharacterEncoding("utf-8"); SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); String curtime=format.format(new Date()); //取得cookie Cookie[] cookies = request.getCookies(); String lasttime=null; if(cookies!=null) { for(Cookie c:cookies) { //判断是否有lasttime的cookie if("lasttime".equals(c.getName())){ //有就输出上次访问的时间 lasttime=c.getValue(); response.getWriter().println("上次访问时间:"+lasttime); response.getWriter().println("这次访问时间:"+curtime); //将lasttime更改为现在的时间 c.setValue(curtime); //设置为一个月 c.setMaxAge(1*30*24*60*60); //返回修改 response.addCookie(c); break; } } } //假如没有cookies或者没有lasttime就建立对应的cookie if(cookies==null||lasttime==null) { //输出本次访问的时间 response.getWriter().println("这是您第一次访问网站"+curtime); //创建lasttime的cookie Cookie cookie=new Cookie("lasttime", curtime); //设置保存时间为一个月 cookie.setMaxAge(1*30*24*60*60); //发送给浏览器 response.addCookie(cookie); } } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }