cookie 案例 记住上一次的访问时间

Posted yitaqiotouto

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cookie 案例 记住上一次的访问时间相关的知识,希望对你有一定的参考价值。

  1. 需求:记住上一次的访问时间
    1. 第一次访问Servlet 提示 欢迎首次访问
    2. 之后的访问 都提示 您上次的访问时间为:“”“”“”“”“”;
  2. 分析:
    public class cookieServlet4 extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    response.setContentType("text/html;charset=utf-8");//设置消息体的数据格式以及编码

    Cookie[] cs = request.getCookies();

    if (cs!=null) {

    int i =0;

    for (Cookie c : cs) {

    if((c.getName()).equals("lasttime"))
    {
    Date date = new Date();

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");

    String str_date = sdf.format(date);

    System.out.println("编码前"+str_date);

    str_date = URLEncoder.encode(str_date,"utf-8");//URL编码

    System.out.println("编码后"+str_date);

    String value = c.getValue();

    //URL解码

    System.out.println("解码前:"+value);

    value = URLDecoder.decode(value,"utf-8");

    response.getWriter().write("欢迎回来 你上次的访问时间是:"+value);

    c.setValue(str_date);
    //设置存活时间

    c.setMaxAge(60 * 60);

    response.addCookie(c);


    break;

    }else if (cs.length==++i){//所有的cookie都不是last time 添加一个 name 为lasttime 的

    Date date = new Date();
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
    String str_date = sdf.format(date);

    str_date = URLEncoder.encode(str_date,"utf-8");

    Cookie cookie = new Cookie("lasttime",str_date);

    cookie.setMaxAge(60 * 60); //设置存活时间

    response.addCookie(cookie);

    response.getWriter().write("欢迎首次访问");


    }


    }
    }





    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    this.doPost(request, response);
    }
    }
  3. URLEncoder.encode(str_date,"utf-8"); 编码 解码为
    URLDecoder.decode(value,"utf-8"); 返回字符串类型

 

以上是关于cookie 案例 记住上一次的访问时间的主要内容,如果未能解决你的问题,请参考以下文章

cookie - 提示上一次访问该网页的时间

Java 之 cookie 记住用户登录时间案例

Cookie的简单实例;

Cookie&Session会话技术

会话技术知识点整理(Cookie和Session)

JavaWeb之会话技术