如何在Java中实现Session Timeout?

时间:2012-01-05 09:52:56

标签: java session session-timeout

我们有一个简单的基于Java的应用程序。在那里,我们创建了从客户端接收createSession()请求的会话。然后我们在会话上执行“操作”,最后在接收release()时,我们销毁会话对象。现在我想为应用程序实现会话超时功能。如果会话空闲了一段可配置的时间,请将其销毁。我可以创建一个专用线程,它会在一定时间间隔后唤醒并遍历所有会话对象。基于每个对象的“lastAccessedTimeStamp”,只要适用,它就会调用release()。还有什么可以做的?这里可以使用哪些其他API?

1 个答案:

答案 0 :(得分:1)

这是什么类型的应用程序?对于Web应用程序,会话处理(包括超时)由servlet容器自动完成;超时值在web.xml配置文件中设置。

如果你想重新发明所有这些轮子,那么是的,一个单独的线程定期(可能每分钟一次)检查所有会话并释放超时的声音听起来像一个合理的实现。