// 创建Cookie存放Session的标识号
Cookie cookie = new Cookie("JSESSIONID", session.getId());
cookie.setMaxAge(5);
cookie.setPath("/123");
response.addCookie(cookie);
我的Tomcat路径为/tomcat
而这里设置路径/123不存在,上述cookie保存session访问正常
但是cookie设置失效时间等属性失效
需要更改为/tomcat
// 创建Cookie存放Session的标识号
Cookie cookie = new Cookie("JSESSIONID", session.getId());
cookie.setMaxAge(5);
cookie.setPath("/tomcat");
response.addCookie(cookie);
}
错误总代码
package com.qcu;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
import java.io.IOException;
@WebServlet("/IndexServletsession")
public class IndexServletsession extends HttpServlet {
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException {
// 解决乱码问题
response.setContentType("text/html;charset=utf-8");
// 创建或者获取保存用户信息的Session对象
HttpSession session = request.getSession();
User user = (User) session.getAttribute("user");
if (user == null) {
response.getWriter().print(
"还没有登录,请<a href='/tomcat/login.html'>登录</a>");
} else {
response.getWriter().print("已登录,欢迎你," + user.getUsername() + "!");
response.getWriter().print(
"<a href='/tomcat/LoginoutServletsession'>退出</a>");
// 创建Cookie存放Session的标识号
Cookie cookie = new Cookie("JSESSIONID", session.getId());
cookie.setMaxAge(5);
cookie.setPath("/123");
response.addCookie(cookie);
}
}
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
改正后
package com.qcu;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
import java.io.IOException;
@WebServlet("/IndexServletsession")
public class IndexServletsession extends HttpServlet {
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException {
// 解决乱码问题
response.setContentType("text/html;charset=utf-8");
// 创建或者获取保存用户信息的Session对象
HttpSession session = request.getSession();
User user = (User) session.getAttribute("user");
if (user == null) {
response.getWriter().print(
"还没有登录,请<a href='/tomcat/login.html'>登录</a>");
} else {
response.getWriter().print("已登录,欢迎你," + user.getUsername() + "!");
response.getWriter().print(
"<a href='/tomcat/LoginoutServletsession'>退出</a>");
// 创建Cookie存放Session的标识号
Cookie cookie = new Cookie("JSESSIONID", session.getId());
cookie.setMaxAge(5);
cookie.setPath("/tomcat");
response.addCookie(cookie);
}
}
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}