日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

权限框架 - shiro 简单入门实例

發布時間:2025/3/20 编程问答 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 权限框架 - shiro 简单入门实例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前面的帖子簡單的介紹了基本的權限控制,可以說任何一個后臺管理系統都是需要權限的

今天開始咱們來講講Shiro

首先引入基本的jar包

1 <!-- shiro --> 2 <dependency> 3 <groupId>org.apache.shiro</groupId> 4 <artifactId>shiro-core</artifactId> 5 </dependency> 6 <dependency> 7 <groupId>org.apache.shiro</groupId> 8 <artifactId>shiro-web</artifactId> 9 </dependency> 10 <dependency> 11 <groupId>org.apache.shiro</groupId> 12 <artifactId>shiro-spring</artifactId> 13 </dependency> 14 <dependency> 15 <groupId>org.apache.shiro</groupId> 16 <artifactId>shiro-ehcache</artifactId> 17 </dependency> 18 <dependency> 19 <groupId>org.apache.shiro</groupId> 20 <artifactId>shiro-quartz</artifactId> 21 </dependency>

?

項目工程結構:

創建shiro-demo.ini:

# user infomation configer: [name=pwd]
[users]
lee=123456
nee=654321

構建一個junit測試最基本的登錄登出

1 @Test 2 public void testLoginAndLogout() { 4 // 創建SecurityManager工廠,通過ini配置文件創建 SecurityManager工廠 5 Factory<SecurityManager> factory = new IniSecurityManagerFactory("classpath:shiro/shiro-demo.ini"); 7 // 創建SecurityManager 8 SecurityManager securityManager = factory.getInstance(); 10 // 設置SecurityManager到運行環境中,保持單例模式 11 SecurityUtils.setSecurityManager(securityManager); 13 // 從SecurityUtils里邊創建一個subject 14 Subject subject = SecurityUtils.getSubject(); 16 // 在認證提交前準備token(令牌) 17 // 這里的賬號和密碼 將來是由用戶輸入進去 18 UsernamePasswordToken token = new UsernamePasswordToken("lee", "123456"); 20 try { 21 // 執行認證提交 22 subject.login(token); 23 } catch (AuthenticationException e) { 24 e.printStackTrace(); 25 } 27 // 是否認證通過 28 boolean isAuthenticated = subject.isAuthenticated(); 30 System.out.println("是否認證通過:" + isAuthenticated); 32 // 退出操作 33 subject.logout(); 35 // 是否認證通過 36 isAuthenticated = subject.isAuthenticated(); 38 System.out.println("是否認證通過:" + isAuthenticated); 39 }

運行后就可以測試用戶名密碼正確與否的情況是否能夠通過

用戶名不正確,密碼不正確,或者用戶名不存在都將以異常的信息拋出

?

總結

以上是生活随笔為你收集整理的权限框架 - shiro 简单入门实例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。