java - java中获取登录用户的 session 数据

标签 java session

我正在使用 servlet。当我的用户登录时,我的应用程序会在 session 变量中设置他的 userId 和 deviceId。

我的应用程序的其他部分现在需要在线人员列表及其 userId/deviceId。请注意,一个用户可能同时登录 2 个设备,因此同一个 userId 有 2 个 deviceId。

我应该如何处理这种情况?我不愿意使用数据库来跟踪登录/注销功能

最佳答案

将此信息也存储在 HttpServletContext 的属性中。此上下文对于每个 servlet 都是全局的,并且可以被所有 session 访问。

您甚至可以做得更多。使用 HttpSessionAttributeListener 您可以在每次添加属性时收到通知,因此如果您想创建某种监视器应用程序,它可能会更具响应性。

关于java - java中获取登录用户的 session 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6703491/

相关文章:

java - "stack overflow on call to Landroid/database/sqlite/SQLiteOpenHelper;.<init>:VLLLI"

java - "Self-suppression not permitted"究竟是什么?为什么 Javac 生成的代码会导致此错误?

c++ - Node.js 独立套接字 session

java - 如何从 StyledText 获取所有折叠线

java - 读取/更新操作时出现 Dynamodb ConditionalCheckFailedException - java sdk

java - 有什么方法可以从本地计算机(本地服务器)读取数据库文件并将其复制到android中的 Assets 文件夹中?

php - 大 SQL 查询 - 最佳实践

php - 在没有 ACID 数据库的情况下处理 session ?

php - 为什么在数据库中保存session是好的save?

php - PHP 从 5.3.1 升级到 5.3.2 后 session 不起作用