1. 程式人生 > >spring-shiro最基本的配置,就這一篇入門

spring-shiro最基本的配置,就這一篇入門

Apache Shiro是一個強大的,易用的Java安全框架。它被用作於認證,授權,加密,session管理。依賴於Shiro簡單易懂的API,就可以快速的構建包括手機,大型web和商業應用。今天小編就帶大家入門shiro,你會發現shiro並沒有你想的那麼難。

1、新增依賴,這裡只展示shiro的,Spring的依賴及配置如果不懂得可以加QQ群:105249460,問群主

這裡寫圖片描述

2、再web.xml中新增shiro的過濾器,很重要,注意點節點,再shiro的配置檔案中必須要有此filter-name的bean存在,否則會出錯。

這裡寫圖片描述

3、shiro配置檔案,這裡命名為applicationContext-shiro.xml,詳細內容看註釋基本就可以懂了

這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述

注意:
1) 為了使登入走我們自定義的過濾器登入的URL攔截必須是authc,因為我們的FormFilter整合的FormAuthenticationFilter,否則是就需要在Controller寫登入的程式碼。
2) 再次強調bean的ID為shiroFilter必須要和web.xml中保持一致,不明白為什麼的可以看下原始碼

(1)doGetAuthenticationInfo方法

這裡寫圖片描述
這裡寫圖片描述

(2)doGetAuthenticationInfo方法

這裡寫圖片描述

(3)setSession方法

這裡寫圖片描述

5、實現表單的filter讓shiro為我們執行登入操作,我能只需新增驗證碼即可,需要繼承FormAuthenticationFilter,需要我們注意的也就下面這幾個方法,其中在onAccessDenied中我們新增驗證碼的操作,setFailureAttribute中我們可以在request物件中設定失敗的訊息,在preHandle攔截登入的請求,防止二次登入。

這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述

6、接下來我們需要一個LoginController,裡面的方法很簡單

這裡寫圖片描述

這樣就完成了shiro的整合,如果還有不懂得同學可以新增QQ群:105249460