如何在服务器断开连接后在Spring MVC中保持客户端会话存活

时间:2014-04-30 11:28:03

标签: java spring spring-mvc session-cookies session-state

我正在处理Spring MVC申请。通常面临一个问题,即当服务器启动时客户端会话过期。

所以,我想让会话活着。当服务器启动时,客户端不需要再次登录。 我们可以在数据库中保存cookie ID或会话ID以使客户端重新连接。

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

如果您使用的是Spring安全性,则可以使用自己的SecurityContextRepository实现(默认情况下为HttpSessionSecurityContextRepository)来将会话内容保留在数据库中。这样,当用户呈现他的cookie时,安全框架过滤器(SecurityContextPersistentFilter)将查看您的数据库以查找会话。因此,即使服务器关闭,上下文仍可在数据库中使用,并在服务器重新启动后的下一个用户请求期间加载。

如果不能选择会话持久性,则可能必须使用会话复制策略部署服务器群集。

答案 2 :(得分:-1)

记住我的目的完全不同。它不会跨服务器重新启动会话,而是在客户端(浏览器)中重新启动。即使记得我,你也无法通过服务器重启来获取它,除非你使用PersistentRememberMeService(到数据库)