在购物网站中,用户登陆该网站,服务器会为之创建唯一的一个session,并且回写一个Cookie给浏览器,该Cookie用来存放JSESSIONID,等到下次发送请求的时候,浏览器会带着这个Cookie访问服务器,但是不幸的是,这个Cookie没有设置有效期,这就意味着在浏览器关闭之后,也随之消亡。
为了能够在session有效期30分钟内,用户关掉浏览器之后,重新打开浏览器也能找到自己的session,我们必须自己来给这个Cookie。那么怎么来回写呢?
HttpSession session = request.getSession();
String sessionid = session.getId();
Cookie cookie = new Cookie("JSESSIONID",sessionid);
cookie.setPath("/webapp");
cookie.setMaxAge(30*60);
response.addCookie(cookie);
通过这个Cookie,下次就可以访问同一个session了。