创建Shiro应用
使用Idea创建一个Maven项目
Pom.xml中添加如下依赖:
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-core</artifactId>
<version>1.2.3</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.6.1</version>
</dependency>
在src/main/resources目录下创建shiro.ini
[users]
java1234=1234
jack=123
在下创建HelloWorld
package com.java1234.shiro;
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;
public class HelloWorld {
public static void main(String[] args) throws AuthenticationException{
//读取配置文件 ,初始化securityManager工厂
Factory<SecurityManager> factory=new IniSecurityManagerFactory("classpath:shiro.ini");
//获取SecurityManager实例
SecurityManager securitymanager=factory.getInstance();
//把SecurityManager实例绑定SecurityUtils
SecurityUtils.setSecurityManager(securitymanager);
//得到当前执行的账户
Subject SecurityUser = SecurityUtils.getSubject();
//创建令牌
UsernamePasswordToken Token=new UsernamePasswordToken("jack","123");
try {
//身份验证
SecurityUser.login(Token);
System.out.println("登录成功");
}catch(AuthenticationException e) {
e.printStackTrace();
System.out.println("登录失败");
}
SecurityUser.logout();
}
}