创建会话时添加另一个cookie

时间:2017-07-12 10:48:53

标签: java spring tomcat struts2

在我用struts 2(javax.servlet v 2.5和嵌入式tomcat lib)开发的web应用程序中,我在创建HttpSession时第一次请求后总是自动将JSESSIONID添加到cookie中(首次调用请求时)。 getSession()),我知道JSESSIONID旨在识别创建的http会话。

现在我想添加更多Cookie,但我还没有找到如何在框架struts 2中添加此Cookie?如何在用户注销时将其从响应的cookie中删除。

1 个答案:

答案 0 :(得分:2)

添加cookieName Cookie:

Cookie newCookie = new Cookie("cookieName", "cookieValue");
newCookie.setMaxAge(60*60*24*365); //Store cookie for 1 year
response.addCookie(newCookie);

然后删除它:

Cookie[] cookies = request.getCookies();

if (cookies != null) {
 for (Cookie cookie : cookies) {
   if (cookie.getName().equals("cookieName")) {
     cookie.setValue("");
     cookie.setPath("/");
     cookie.setMaxAge(0);
     resp.addCookie(cookie);
  }
 }     
}