1

我正在struts2 中创建一个应用程序。

在这方面,我面临着会话管理方面的一项挑战。

我需要的 :

如果用户第一次在 IE 浏览器中打开登录页面,那么我想显示login.jsp用户将输入用户名和密码的页面。成功提供登录凭据后,我正在使用会话范围内存储一个属性,例如数据session.setAttribute("data","Hello");

在这里,我使用的是 tomcat 持久性 JDBC 基本存储。我能够将会话 ID 及其数据存储在数据库中。

场景:由于某些网络问题或服务器问题,我们强制重启服务器。此时可能是客户端可以关闭浏览器,认为我已经登录,所以我离开页面的地方,从那以后我的会话将开始,因为会话使用 tomcat 持久性管理器持久保存在数据库中。

问题:如果我重新启动服务器但不关闭浏览器,我将获得与数据相同的会话。如果我在服务器重新启动后关闭浏览器,我将无法继续进行现有会话。我的数据库仍然有以前的会话数据,当我尝试在控制台上显示时,我得到了以前的会话 ID,但无法跳过登录页面进程。

请帮我!

谢谢。

4

1 回答 1

3

要解决您的问题,您将不得不使用持久性 cookie。持久性 cookie 是即使在用户关闭浏览器后仍会存储的 cookie。以下链接应该会有所帮助:在 Struts 2 和 Struts 中使用 cookie

于 2013-09-13T10:58:10.947 回答