在java里面如何实现同一用户不能同时异地登录

鸿蒙传说
浏览 1460回答 2
2回答

慕妹3242003

Session的机制(为了安全)决定了Session&nbsp;A不能获得Session&nbsp;B的信息,即Session之间是互相隔离的. 你可以在Login的时候,将当前登录的用户信息保存一份到Application中. 大致流程如下: 在Application放一个HashMap<String&nbsp;[userName],String[SessionId]>&nbsp;logins&nbsp;=&nbsp;new.... 登录的时候&nbsp;logins.put(userName,sessionId); 权限校验的时候 String&nbsp;sessionId&nbsp;=&nbsp;logins.get(userName); if(request.getSession().getSessionId().equals(sessionId)){ //允许继续操作 }else{ //session.inValidate();//取消当前session的有效期.这个方法名我记不太清楚了. //清空session里保存的内容,退出登录,返回到登录页面. } 退出的时候, logins.remove(userName); 大致流程如上,你可以仔细参考一下

摇曳的蔷薇

最简单的方法,是设置单点登录即可
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java