apache shiro学习笔记--02(入门案例)
2017-10-08 12:08
621 查看
1.说明
用户的信息,权限,角色存放在配置文件(realm为textrelam)。2.代码:
1.代码目录结构2.pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.xie..shiroStudy</groupId> <artifactId>shiro01</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>shiro01 Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>1.2.4</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.12</version> </dependency> </dependencies> <build> <finalName>shiro01</finalName> </build> </project>
3.shiro.ini
[users] xie=123 fu=111
4.Shiro01.java
package com.xie.test; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.AuthenticationException; import org.apache.shiro.authc.UsernamePasswordToken; import org.apache.shiro.config.IniSecurityManagerFactory; import org.apache.shiro.mgt.SecurityManager; import org.apache.shiro.subject.Subject; import org.apache.shiro.util.Factory; /** * shiro入门案列 * @author xie * */ public class Shiro01 { public static void main(String[] args) { // 读取配置文件,初始化SecurityManager工厂 //shiro.ini中存放用户信息,权限,角色 Factory<SecurityManager> factory=new IniSecurityManagerFactory("classpath:shiro.ini"); // 获取securityManager实例 SecurityManager securityManager=factory.getInstance(); // 把securityManager实例绑定到SecurityUtils SecurityUtils.setSecurityManager(securityManager); // 得到当前执行的用户 Subject currentUser=SecurityUtils.getSubject(); // 创建token令牌,用户名/密码(对用户名为xie,密码为123的用户认证) UsernamePasswordToken token=new UsernamePasswordToken("xie", "123"); try{ // 身份认证(用xie,123和配置文件的进行匹配认证) currentUser.login(token); System.out.println("身份认证成功!"); }catch(AuthenticationException e){ e.printStackTrace(); System.out.println("身份认证失败!"); } // 退出 currentUser.logout(); } }
相关文章推荐
- java安全框架-Shiro学习笔记(一)-入门小案例
- Apache Shiro学习笔记(三)用户授权
- Apache Shiro学习笔记(七)IniWebEnvironment
- Apache Shiro学习笔记(1)
- apache-shiro 学习笔记
- Hibernate学习笔记 -- day02 hibernateAPI详解以及入门案例演示
- angular学习笔记(一)-入门案例
- Servlet学习笔记_02_web入门并理解web服务器
- Apache Shiro学习笔记(九)Spring集成
- Apache Shiro学习笔记(八)Shiro的JSTL标签
- [Kotlin&Anko开发Android入门学习笔记]-02Kotlin如何使用Android第三方库
- 【NodeJS 学习笔记02】入门资源很重要
- Apache Shiro学习笔记(七)EnvironmentLoaderListener
- Apache Shiro学习笔记(三)用户授权自定义Permission
- Apache Shiro 学习笔记1
- 深入理解机器学习:从原理到算法 学习笔记-第1周 02简易入门
- Apache Shiro学习笔记(二)身份验证subject.login过程
- 逐梦旅程学习笔记 DirectX开发入门02:旋转的彩色立方体
- Apache Shiro学习笔记(六)FilterChain
- Hibernate学习之入门案例笔记