Shiro -- (四) 数据库支持

2020-02-27 16:02:19来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

Shiro -- (四) 数据库支持

主要就是JdbcRealm这个类

先看一下部分源码:

 

 先建表:users(用户名 / 密码)、user_roles(用户 / 角色)、roles_permissions(角色 / 权限),并且往users里面插入一条数据---lc/123,其实也就用了一个users表登陆一下

创建ini文件:

jdbcRealm=org.apache.shiro.realm.jdbc.JdbcRealm
dataSource=com.alibaba.druid.pool.DruidDataSource
dataSource.driverClassName=com.mysql.jdbc.Driver
dataSource.url=jdbc:mysql://localhost:3306/shiro
dataSource.username=root
dataSource.password=123456

jdbcRealm.dataSource=$dataSource
securityManager.realms=$jdbcRealm

测试:

@org.junit.Test
    public void t4(){
        Factory<SecurityManager> factory=new IniSecurityManagerFactory("classpath:shiro-jdbc-realm.ini");
        SecurityManager securityManager = factory.getInstance();
        SecurityUtils.setSecurityManager(securityManager);
        Subject subject = SecurityUtils.getSubject();
        UsernamePasswordToken token=new UsernamePasswordToken("lcc","123");
        try {
            subject.login(token);
        }catch (AuthenticationException e){
            System.out.println("nonono!");
        }
        subject.logout();
    }

测试成功

 


原文链接:https://www.cnblogs.com/crazy-lc/p/12372870.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Myeclipse maven项目转web项目

下一篇:springcloud vue.js 前后分离 微服务 分布式 activiti工作流 集