session存、取值,cookie存,取值!
正好今天用到了,自己整理了一下比较全面的简单实用的 !水平比较低,有用的上的可以看看!
session存值:
request.getSession().setAttribute("username(这是名称)", "这里放值");
session取值:
HttpSession session = request.getSession(); I String username = (String )session.getAttribute("username");
cookie存值:
Cookie cookies = new Cookie("verificationNum(名称)", "这里放的是值"); // tomcat下多应用共享 cookies.setPath("/"); //一天有效期 cookies.setMaxAge(86400); // 将Cookie添加到Response中,使之生效 response.addCookie(cookies); //js存 document.cookie="taskIdA=${pageMap.instance[0].cur_task_id};path=/";
cookie 取值,我这里需要更换值!所以做了一个是否有标记的判定和不同的操作,下面的方法是根据cookie名字获取对应的属性!,如果需要清除的话直接赋值为空!
private static void verificationCookie(HttpServletRequest request,HttpServletResponse response){ Map<String, Cookie> cookieMap = ReadCookieMap(request); if (cookieMap.containsKey("verificationNum")) { Cookie cookie = (Cookie) cookieMap.get("verificationNum"); int cookieValue=Integer.parseInt(cookie.getValue()); System.out.println("cookieValue:"+cookieValue); Cookie cookies = new Cookie("verificationNum", ""+(cookieValue+1)); // tomcat下多应用共享 cookies.setPath("/"); //一天有效期 cookies.setMaxAge(86400); // 将Cookie添加到Response中,使之生效 response.addCookie(cookies); }else { Cookie cookie = new Cookie("verificationNum", "1"); // tomcat下多应用共享 cookie.setPath("/"); cookie.setMaxAge(86400); // 将Cookie添加到Response中,使之生效 response.addCookie(cookie); // addCookie后,如果已经存在相同名字的cookie,则最新的覆盖旧的cookie } } private static Map<String,Cookie> ReadCookieMap(HttpServletRequest request){ Map<String,Cookie> cookieMap = new HashMap<String,Cookie>(); Cookie[] cookies = request.getCookies(); if(null!=cookies){ for(Cookie cookie : cookies){ cookieMap.put(cookie.getName(), cookie); } } return cookieMap; }