Shiro Redisson 1.0.5 发布,基于 redis 的缓存和会话实现

2019年01月09日

shiro-redisson 是一个 Apache Shiro 的扩展组件,提供了基于 redis 实现的缓存和会话,以支持分布式环境下的应用。底层使用了 redisson 作为 redis 客户端。

shiro-redisson 更新说明

1.使用redisson包解决redis缓存
2.解决shiro-redis使用*查询时,导致redis长时间卡死
3.解决使用spring-boot-devtools,出现ClassCastException异常

JDK

1.8

如何使用?

    引入Maven依赖或下载jar包

        <dependency>
            <groupId>com.github.fartherp</groupId>
            <artifactId>shiro-redisson</artifactId>
            <version>x.x.x</version>
        </dependency>

java使用

    @Bean
    public MyShiroRealm myShiroRealm() {
        return new MyShiroRealm();
    }
    
    @Bean
    public SessionManager sessionManager(SessionDAO redisSessionDAO, ObjectProvider<List<SessionListener>> sessionListenersProvider) {
        DefaultWebSessionManager sessionManager = new DefaultWebSessionManager();
        sessionManager.setSessionDAO(redisSessionDAO);
        sessionManager.setSessionListeners(sessionListenersProvider.getIfAvailable());
        return mySessionManager;
    }

    /**
    * 内置session监听器,保证删除session/cache冗余的数据信息
    */
    @Bean
    public List<SessionListener> sessionListener(SessionDAO redisSessionDAO, MyShiroRealm myShiroRealm) {
        return Collections.singletonList(new RedisSessionListener(redisSessionDAO, myShiroRealm));
    }

    @Bean
    public RedisCacheManager cacheManager(RedissonClient redissonClient) {
        return new RedisCacheManager(redissonClient);
    }

    @Bean
    public RedisSessionDAO redisSessionDAO(RedisCacheManager cacheManager) {
        return new RedisSessionDAO(cacheManager);
    }


展开阅读全文
36 收藏
分享
加载中
最新评论 (3)
ding
2019-01-10 11:45
0
回复
举报
这个弄错了 地址:https://github.com/fartherp/shiro-redisson
2019-01-10 10:29
0
回复
举报
这个好久没更新了吧,重启了?
2019-01-09 18:25
0
回复
举报
更多评论
3 评论
36 收藏
分享
返回顶部
顶部