如何用javaEE技术实现防止同一用户的重复登录呢?
给了不少分说说大致步骤就行需求如下在登陆界面输入正确的用户名和密码后台检测该用户名是否已经登陆如果该用户名已经登陆且登陆的ip地址和当前地址不一致则提示用户已登录如果此时...
给了不少分 说说大致步骤就行需求如下在登陆界面 输入正确的用户名和密码 后台检测该用户名是否已经登陆 如果该用户名已经登陆且登陆的ip地址和当前地址不一致 则提示用户已登录 如果此时当前用户强行登陆 则将之前登陆的用户踢下线项目内所有页面 必须登陆后才能浏览 被踢下线的用户也不能浏览大致说一下涉及的类以及该怎么实现 不必要具体给出代码 谢谢
展开
3个回答
展开全部
首先用户登录把用户ID(唯一)写入Application中,当用户登出时再把该用户从Application中移除。
在什么情况下移除呢?
这里需要一个监听listener,当sessionDestroyed的时候移除。
为什么不用session存用户ID?
因为session是一个用户对应一个,而Application是所有用户都能访问的。
就好像我们做后台管理,维护一个在线用户列表一样,需要存储在Application中。
希望我的回答对你有帮助
在什么情况下移除呢?
这里需要一个监听listener,当sessionDestroyed的时候移除。
为什么不用session存用户ID?
因为session是一个用户对应一个,而Application是所有用户都能访问的。
就好像我们做后台管理,维护一个在线用户列表一样,需要存储在Application中。
希望我的回答对你有帮助
展开全部
你直接把登录用户的信息放在session中,在界面判断一下,session中是否有该用户,如果有就把登录的条目隐藏,没有则显示登录条目。没有那个网站会说,你登录了还让你可以看到登录的按钮。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以将用户信息存储在ServletContext中,在次登录的时候检查,ServletContext中是否有指定用户。当然这个是容器自带的上下文。你也可以自己写一个用户管理容器每个用户需要一个唯一的标识。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询