02 Cookie应用场景01

需求:
判断用户是第几次访问本网站,如果是第一次那么显示当前时间,如果不是那么显示上次访问的时间

    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        boolean firstVisit = true;
        resp.setContentType("text/html;charset=utf-8");
        //日期格式
        SimpleDateFormat df = new SimpleDateFormat("yyyy年MM月dd日hh小时mm分钟ss秒");
        
        //判断是否首次访问
        
        Cookie cookies[] = req.getCookies();
        if (cookies!=null){
            for (Cookie cookie : cookies){
                if ("lastTime".equals(cookie.getName())){ //说明不是第一次访问
                    
                    //解码得到上次访问的时间
                    String lastTime = URLDecoder.decode(cookie.getValue(),"utf-8");
                    resp.getWriter().write("欢迎您再次访问,上次访问时间为:"+lastTime);
                    
                    //创建当前时间的Cookie且替换原来的Cookie
                    String date = df.format(new Date());
                    date = URLEncoder.encode(date,"utf-8");//中文要记得编码
                    Cookie c = new Cookie("lastTime",date);
                    resp.addCookie(c);
                    
                    //修改标签值
                    firstVisit = false;
                }
            }
        }
        
        
        if (firstVisit){    //表明是第一次
            //显示当前时间
            String date = df.format(new Date());
            resp.getWriter().write("欢迎本次访问,您当前时间为"+date);
            //添加Cookie
            date = URLEncoder.encode(date,"utf-8");//中文要记得编码
            Cookie c = new Cookie("lastTime",date);
            resp.addCookie(c);
        }
    }
cookie.gif
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容