Cookie和Session主要的区别
发布时间:2022-08-20 10:49:51
点击数:

如果name为JSESSIONID的Cookie不存在,即发生了关闭或更换浏览器的情况,返回(1)中重新去创建Session与特殊的Cookie
name为JSESSIONID的Cookie存在,根据value中的SessionId去寻找session对象
value为SessionId不存在,返回(1)中重新去创建Session与特殊的Cookie
value为SessionId存在,返回session对象

//cookie示例@RequestMapping(path = "cookie/set", method = RequestMethod.GET)@ResponseBodypublic String setCookie(HttpServletResponse response) {//创建cookieCookie cookie = new Cookie("code", CommunityUtil.generateUUID());//设置cookie生效范围cookie.setPath("community/alpha");//设置cookie的生存时间cookie.setMaxAge(60*10);//发送cookieresponse.addCookie(cookie);return "set cookie";}
@RequestMapping(path = "cookie/get", method = RequestMethod.GET) @ResponseBody public String getCookie(@CookieValue("code") String code) { System.out.println(code); return "get cookie"; }//session示例@RequestMapping(path = "session/set", method = RequestMethod.GET)@ResponseBodypublic String setSession(HttpSession session) {session.setAttribute("id",1);session.setAttribute("name","Test");return "set session";}
@RequestMapping(path = "session/get", method = RequestMethod.GET) @ResponseBody public String getSession(HttpSession session) { System.out.println(session.getAttribute("id")); System.out.println(session.getAttribute("name")); return "get session"; }