記一次同一賬號一端登入,自動擠出另一個端
背景:最近來了一需求。同一賬號在一個端登入,需自動擠出另一個端
思考:
1、針對單機版服務,都是通過客戶端傳 Cookie: JSESSIONID=F870E571C55BAFBE7050C98B9B1D6FFE; 服務端儲存session控制各個瀏覽器的會話。
2、同一賬號登入,需把此賬號另一端的session銷燬即可。
針對1和2 分析涉及到1個問題,第二次登入拿到第一次登入的session銷燬即可。
因此需要對session統一管理,方便操作。
public class SessionUtil {
private static ConcurrentHashMap<String, HttpSession> hashMap = new ConcurrentHashMap<String, HttpSession>();
public static void putSessionId(HttpSession session) {
hashMap.put(session.getId(), session);
}
public static HttpSession getSession(String sessionId) {
return hashMap.get(sessionId);
}
public static void removeSessionId(HttpSession session) {
hashMap.remove(session.getId());
}
}
使用全域性變數統一管理,涉及到多個使用者執行緒操作。使用併發包 ConcurrentHashMap
使用redis 記錄 sessionId 即可。。
找出session銷燬即可 httpSession.invalidate();
相關文章
- 129 會員同一賬號,限制只在同一臺電腦裝置上單點登入,新登入後原登入會自動退出
- Dcat-admin實現一個賬號只能同時登入一次
- 多賬號登入控制
- Git配置多個賬號免密登入Git
- golang Iris 實現登入踢人功能 (擠號)Golang
- Postman無法登入賬號Postman
- 賬號密碼登入介面密碼
- centos自動登入帳號設定CentOS
- 同一臺電腦配置兩個git賬號Git
- elasticsearch加賬號密碼登入Elasticsearch密碼
- Auth Session 退出他人正登入的賬號、passport 退出登入SessionPassport
- SQL優化之把運算放在列的另一端SQL優化
- FTP登入時一直彈出登入視窗,就算輸入正確的賬號密碼也不能登入FTP密碼
- 搜狐號多賬號管理工具,管理多個自媒體賬號
- 自動登入方案
- SQL Server 禁用Windows身份登入時忘記其他賬號如sa登入密碼後重置密碼SQLServerWindows密碼
- 如何用同一套賬號接入整個研發過程?
- 自媒體賬號管理神器,多個平臺同時登入,給你不一樣的感覺
- win11跳過微軟賬號登入方法微軟
- 如何登入 oss 的賬號密碼是什麼密碼
- Linux配置SSH免密碼登入(非root賬號)Linux密碼
- win10微軟賬號登入不了怎麼辦_win10登入微軟賬戶出錯的解決方法Win10微軟
- windows10電腦遠端桌面自動記錄登入密碼的方法Windows密碼
- 直播app原始碼,登入時自動輸入密碼/自動記住密碼APP原始碼密碼
- 玩廢10個自媒體賬號,總結出3個限流解決方法
- 記一次git clone賬號切換小問題Git
- vscode輸入中文標點符號自動覆蓋前一個字元以及彈出兩個符號VSCode符號字元
- SharedPreferences實現記住密碼----自動登入功能密碼
- 短影片多賬號管理平臺,一鍵釋出多個影片賬號
- 自媒體賬號管理系統,輕鬆管理200個賬號,省心又省事
- 使用 GitLab 賬號登陸 KubeSphereGitlab
- IntelliJ IDEA 2022.1.4最新中文版「無需登入賬號」IntelliJIdea
- springSecurity 登入以及使用者賬號密碼解析原理SpringGse密碼
- 自媒體如何運營多個賬號?用這個工具,能同時管理幾十個賬號
- 使用 Git 多賬號一次推送多個倉庫Git
- 電腦登入QQ後自動彈出騰訊新聞,如何關閉自動彈出
- linux下使用vsftp搭建FTP伺服器:匿名登入,賬號登入,SSL加密傳輸LinuxFTP伺服器加密
- 記一次COOKIE的偽造登入Cookie