如何基于spring security實(shí)現(xiàn)在線用戶統(tǒng)計(jì)
1.修改web.xml,需要在web.xml描述文件中配置中使得o.s.s.web.session.HttpSessionEventPublisher生效,這樣servelt容器將會通知Spring Security session生命周期的事件(通過HttpSessionEventPublisher)
<listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> <listener> <listener-class> org.springframework.security.web.session.HttpSessionEventPublisher </listener-class> </listener>
2.修改spring-security.xml,借助于使用session注冊跟蹤(通過session并發(fā)控制),實(shí)現(xiàn)顯示系統(tǒng)中當(dāng)前活躍用戶的數(shù)量。
<s:http use-expressions="true" disable-url-rewriting="true" auto-config="true"> <s:session-management invalid-session-url="/timeout"> <s:concurrency-control max-sessions="1" error-if-maximum-exceeded="false" session-registry-ref="sessionRegistry"/> </s:session-management> </s:http> <bean id="sessionRegistry" class="org.springframework.security.core.session.SessionRegistryImpl" />
3.登錄過濾器修改,登錄驗(yàn)證通過后向sessionRegistry中添加在線session
sessionRegistry.registerNewSession(token, bean);
4.在controller中調(diào)用,獲取sessionRegistry中存儲的用戶信息
List<Object> objlist = sessionRegistry.getAllPrincipals();
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 詳解Spring Security中的HttpBasic登錄驗(yàn)證模式
- 詳解spring security之httpSecurity使用示例
- Spring Security中的Servlet過濾器體系代碼分析
- SpringBoot集成Spring Security的方法
- Spring Security學(xué)習(xí)之rememberMe自動登錄的實(shí)現(xiàn)
- Spring security認(rèn)證兩類用戶代碼實(shí)例
- SpringSecurity Jwt Token 自動刷新的實(shí)現(xiàn)
- SpringSecurity如何實(shí)現(xiàn)配置單個(gè)HttpSecurity
相關(guān)文章
Java多線程基礎(chǔ) 線程的等待與喚醒(wait、notify、notifyAll)
這篇文章主要介紹了Java多線程基礎(chǔ) 線程的等待與喚醒,需要的朋友可以參考下2017-05-05解決springmvc+mybatis+mysql中文亂碼問題
這篇文章主要介紹了解決java中springmvc+mybatis+mysql中文亂碼問題的相關(guān)資料,需要的朋友可以參考下2015-09-09javax.mail.SendFailedException: Sending failed問題原因
這篇文章主要介紹了javax.mail.SendFailedException: Sending failed問題原因,需要的朋友可以參考下2015-05-05Spring Boot 整合單機(jī)websocket的步驟 附github源碼
websocket 是一個(gè)通信協(xié)議,通過單個(gè) TCP 連接提供全雙工通信,這篇文章主要介紹了Spring Boot 整合單機(jī)websocket的步驟(附github源碼),需要的朋友可以參考下2021-10-10tio-boot?jfinal-plugins框架整合redis示例詳解
這篇文章主要為大家介紹了tio-boot?jfinal-plugins框架整合redis示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12Java集合操作之List接口及其實(shí)現(xiàn)方法詳解
這篇文章主要介紹了Java集合操作之List接口及其實(shí)現(xiàn)方法,詳細(xì)分析了Java集合操作中List接口原理、功能、用法及操作注意事項(xiàng),需要的朋友可以參考下2015-07-07java實(shí)現(xiàn)查找PDF關(guān)鍵字所在頁碼及其坐標(biāo)
這篇文章主要介紹了java實(shí)現(xiàn)查找PDF關(guān)鍵字所在頁碼及其坐標(biāo)的方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09教你開發(fā)腳手架集成Spring?Boot?Actuator監(jiān)控的詳細(xì)過程
這篇文章主要介紹了開發(fā)腳手架集成Spring?Boot?Actuator監(jiān)控的詳細(xì)過程,集成包括引入依賴配置文件及訪問驗(yàn)證的相關(guān)知識,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05