示例,我有5个不同的用户登录我的应用程序。每个帐户都有我的数据库中保存的会话ID。但是,我想检查每个会话ID是否有效。
我打算创建一种包含所有登录用户会话的某种全局容器,这可能吗?因此,当我想检查时,我只是查看容器并检查会话是否有效,如果不是,我将尝试创建新会话或注销相应的用户。
如果您有任何建议,我愿意听(读)。
答案 0 :(得分:0)
如果会话处于非活动状态,您想要做什么?
如果要注销会话的用户处于非活动状态,则只需在web.xml中配置会话超时
<session-config>
<session-timeout>5</session-timeout>
<tracking-mode>COOKIE</tracking-mode>
</session-config>
此处超时设定为5分钟。在5分钟不活动后,用户将被注销。
答案 1 :(得分:0)
每次用户访问会话时,您都可以将当前时间戳存储在数据库中。
要查找非活动会话,您可以查询旧时间戳。
答案 2 :(得分:0)
我的一个朋友解决了我的困境,
用户的每个会话ID都保存在db 中,并且创建了会话地图。只有具有有效会话ID的登录用户才能在地图中找到;否则,他们会退出。