欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

限制一个账号同时只能在一处登陆

程序员文章站 2022-07-14 15:03:43
...

要限制账号只能在一处登陆,也就是后面登陆的将会迫使前面登陆的人退出,实现把前面的人挤下线的功能

 

实现思路很简单,就是在服务器端保存一个CurrentHashMap<String,Long> loginInfo

 

这个map的key是可以唯一标示一个账号的字符串,比如id,等等,value则是账号的登陆时间

 

同时已经登录的账号的session里面存放一个属性,该属性的值是本次登陆的时间

 

然后在web.xml中配置一个过滤器,每次请求都判断该账号的session里面的登录时间和服务器内存中存放的该账号的登录时间比较,如果session中的登录时间小于服务器内存中的登陆时间,则说明这次的登录时间比较早,就强迫其退出。

 

具体代码实现很简单,思路最重要