java - 我可以使用什么来为在 tomcat 上运行的 java servlet 中的每个 session 实现后台进程?

标签 java ajax tomcat servlets dojo

我希望定期为每个用户运行一个函数,以检查用户是否处于 Activity 状态。如果不活动,该函数将从 servlet 上下文中的用户列表中删除用户并清除用户 session 。

我可以使用什么来为每个用户定期运行该函数?

据我了解,servletcontextlistener 在 servlet 的生命周期内只运行一次,而不是为每个用户运行一次,因此它不可用。此外,建议不要在 servlet 中使用线程。

编辑: 用户(使用 ajax)调用一个 Action ,其中包含更新我为每个用户存储的变量的函数,该变量指示他们上次联系服务器的时间。

最佳答案

您可能正在寻找 javax.servlet.http.HttpSessionListener。 创建一个,在 web.xml 中注册它并让 sessionDestroyed 完成您的工作。

关于java - 我可以使用什么来为在 tomcat 上运行的 java servlet 中的每个 session 实现后台进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10099394/

相关文章:

java - 从整个 SOAP 消息的字符串 XML 创建 SOAPMessage

java - 如何使用 TestFX 等待元素可见?

javascript - tinyMCE 内容的 AJAX POST - 表实体的字符编码

javascript - AJAX GMAIL API调用授权错误

javascript - ColdFusion 为 ajax 调用 CFC 页面

java - 使用 Java Web Start 部署应用程序

windows - 如何在 Windows XP 上的 startup.bat 文件中设置 HeapDumpOnOutOfMemoryError 和 HeapDumpPath

java - 使用 jwt token 身份验证识别用户

tomcat - Tomcat 7 lib目录下的jar文件

java - Primefaces 自动完成多个 - 在输入时选择输入值