浏览器重启Java后保持会话

Bos*_*wow 5 java session servlets web-applications

我正在使用Java servlets / jstl进行小型项目

我已经创建了带有会话的登录名,并且我希望浏览器即使在浏览器重新启动后仍保留该会话。

我写了这段代码:

HttpSession session=request.getSession();
session.setMaxInactiveInterval(604800);
session.setAttribute("loggedOnUser", true);
Run Code Online (Sandbox Code Playgroud)

我已将会话超时设置为一周。但是,每当我关闭浏览器并重新打开它时,我都需要再次登录。当我查看浏览器的cookie时,包含sessionId的cookie仍会在浏览器关闭时过期。我以为“ setMaxInactiveInterval”会将其更改为一个星期。有人知道问题出在哪里吗?

Ani*_*dha 5

我建议设置该Cookie的最大使用期限:

HttpSession session = request.getSession();
Cookie cookie = new Cookie("JSESSIONID", session.getId());
cookie.setMaxAge(Integer.MAX_VALUE);
response.addCookie(cookie);
Run Code Online (Sandbox Code Playgroud)