一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - java shiro實現退出登陸清空緩存

java shiro實現退出登陸清空緩存

2020-08-14 16:12瘋狂的貓 Java教程

本篇文章主要介紹了java shiro實現退出登陸清空緩存,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

上一篇介紹了使用springmvc集成shiro登陸過程,通過FormAuthenticationFilter過濾器獲取到用戶輸入的賬號密碼。

shiro是一個被廣泛使用的安全層框架,通過xml配置方式與spring無縫對接,用戶的登陸/退出/權限控制/Cookie等管理系統基礎功能交給shiro來管理。

一般,在JavaWEB管理平臺系統時,用戶退出系統之前沒需要清除用戶數據和關閉連接,防止垃圾數據堆積,shiro提供了LogoutFilter過濾器,我們可以繼承LogoutFilter,重寫preHandle方法,實現清除緩存功能。

spring-shiro.xml:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!-- 安全認證過濾器 -->
<bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean">
 <property name="securityManager" ref="securityManager" />
 <property name="loginUrl" value="/b/login" />
 <property name="successUrl" value="/b" />
 <property name="filters">
  <map>
   <!--退出過濾器-->
   <entry key="logout" value-ref="systemLogoutFilter" />
  </map>
 </property>
 <property name="filterChainDefinitions">
  <value>
   /b/login = authc
   /b/logout = logout
   /b/** = user
  </value>
 </property>
</bean>

當調用的路徑匹配到/b/logout,會進入到SystemLogoutFilter過濾器,SystemLogoutFilter繼承了LogoutFilter,并重寫了preHandle方法,在preHandle方法執行需要清空的數據。

java" id="highlighter_713568">
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
@Service
public class SystemLogoutFilter extends LogoutFilter {
 @Override
 protected boolean preHandle(ServletRequest request, ServletResponse response) throws Exception {
  //在這里執行退出系統前需要清空的數據
 
 
     Subject subject = getSubject(request, response);
 
  String redirectUrl = getRedirectUrl(request, response, subject);
 
  try {
 
   subject.logout();
 
  } catch (SessionException ise) {
 
   ise.printStackTrace();
 
  }
 
  issueRedirect(request, response, redirectUrl);
 
     //返回false表示不執行后續的過濾器,直接返回跳轉到登錄頁面
 
  return false;
 }
}

注意,需要通過@Service注解,使用spring容器來管理,在spring-shiro.xml中配置shiro過濾器直接使用

?
1
<entry key="logout" value-ref="systemLogoutFilter" />

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://www.cnblogs.com/nosqlcoco/p/5587294.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲天堂中文字幕 | 国产亚洲精品高清在线 | 好姑娘在线完整版视频 | 天天色综合6| 男人的j进入女人的j免费 | 97精品国产自在现线免费 | 久久久久久久电影 | 继的朋友无遮漫画免费观看73 | 精品高潮呻吟99AV无码 | 天天天天天干 | 国产成人 免费观看 | 婷婷综合亚洲 | 免费欧美一级 | 亚洲欧美日韩成人一区在线 | 国产三级自拍视频 | aⅴ天堂小视频 | 国偷盗摄自产福利一区在线 | 丁香网五月天 | 免费看黄色一级 | 13日本xxxxxxxxx18 1313午夜精品久久午夜片 | 亚洲XXX午休国产熟女屁 | 久久久久国产一级毛片高清片 | 猫咪maomiav永久网址 | 欧美国产日韩综合 | 岛国片免费看 | 含羞草传媒每天免费一次破解 | 思思99热久久精品在2019线 | 国产suv精品 | 7788理论片在线观看 | 久久无码人妻中文国产 | 日产乱码卡1卡2卡三免费 | 欧美亚洲影院 | 国产成人99精品免费观看 | 色欲都市| 国产大片免费在线观看 | 国产精品午夜国产小视频 | 亚州人成网在线播放 | 性夜夜春夜夜爽AA片A | 大叔在线观看 | 91免费精品国自产拍在线不卡 | 9420高清视频在线观看网百度 |