java - JAVA中如何更改 session ID而不使当前 session 失效

标签 java session

我想在每次向服务器发出请求后更改 session ID,而不使 session 无效,并保留所有 session 变量而不使其无效。 因为我使用单次登录来限制用户多次登录,方法是在 session 创建时将标志 is_login 更改为 true ,在 session 监听器的帮助下将 session 销毁时更改为 false 。在每次请求之后,我都会使 session 无效以生成新的 session ID。我可以更改 session 而不使其在 JAVA 中无效吗?

最佳答案

自 Java EE 7 和 Servlet API 3.1 (Tomcat 8) 起,您可以使用 HttpServletRequest.changeSessionId()来实现这样的行为。

还有一个监听器 HttpSessionIdListener,每次更改后都会调用它。

关于java - JAVA中如何更改 session ID而不使当前 session 失效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48596845/

相关文章:

python - Django、mod_python、apache 和古怪的 session

java - Netty 4 中的工作线程

java - Dart VM服务客户端

java - 服务器接受套接字,但之后套接字无法接收任何内容

java - RxJava - 通过另一个控制一个 Observable

asp.net - .NET 母版页 session 状态变量未保存

php - SecureCookiePermission 问题 - Applet 无法与最新的 Java 6 更新 29 配合使用

javascript - Laravel Sessions 与 jQuery 可以在 PC 浏览器上工作,但不能在 Android 上工作?

java - JavaMail 中的 session

java - 防止未经授权访问由 servlet 定义的 Web 服务