优秀!这个开源项目中基于Redisson封装了CacheManager的缓存实现

本文介绍了如何在Java后端开发中使用Redisson封装的CacheManager替代传统RedisTemplate,通过Spring-Cache注解实现动态缓存配置,以及RuoYi-Vue-Plus框架的使用,展示了如何利用Redisson进行分布式缓存管理和过期策略。

一、背景

作为一名Java后端开发工程师,日常写Redis缓存的操作的类,可能大部分场景下用的都是RedisTemplate的设计和实现,与CacheManager这种注解集成后,也会用它作为实现,那么今天我给大家分享一种最近学习到的设计和实现,他来自于开源项目中的的代码,基于Redisson这种封装了CacheManager的实现,替换了RedisTemplate,感兴趣的可以尝试试用下,这样就不必为了jedis还是luttuce的redistemplate切换问题头疼了。

二、RuoYi-Vue-Plus介绍

RuoYi-Vue-Plus 是针对 RuoYi-Vue 进行了相关的重写,针对 分布式集群 场景全方位升级(不兼容原框架)的一个后端快速开发框架。

开源主页地址:gitee.com/dromara/Ruo…

RuoYi-Vue-Plus项目目前也加入了dromara开源社区。

为啥我想介绍这个后端快速开发平台呢?因为最近在做公司项目的时候,需要进行某项业务需求的快速环境搭建和开发,同时做些技术上的升级和预研,所以这里选择了这个,虽然他是一个后端CRUD类型的管理端的平台,但是某些小的设计思想和实现也是可以学习的,毕竟老是用一种后端框架去做业务开发,多少会把自己限制死吧,多多去新世界了解一下玩法还是不错的,这个框架和原始ruoyi的区别如下:

三、基于Redisson封装的CacheManager

这个项目中采用了Redisson(基于Netty的客户端工具 ),据说支持Redis 90%以上的命令等

并采用 了Spring-Cache 注解 对其扩展了实现支持了更多功能,例如:

过期时间

最大空闲时间

组最大长度等

只需一个注解即可完成数据自动缓存

3.1、PlusSpringCacheManager类定义

在项目根目录下的ruoyi-framework工程下的src的源码包com.ruoyi.framework.manager中,存在这样一个类:

 

ini

复制代码

package com.ruoyi.framework.manager; import com.ruoyi.common.utils.redis.RedisUtils; import org.redisson.api.RMap; import org.redisson.api.RMapCache; import org.redisson.spring.cache.CacheConfig; import org.redisson.spring.cache.RedissonCache; import org.springframework.boot.convert.DurationStyle; import org.springframework.cache.Cache; import org.springframework.cache.CacheManager; import org.springframework.cache.transaction.TransactionAwareCacheDecorator; import org.springframework.util.StringUtils; import java.util.Collection; import java.util.Collections; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; /** * A {@link org.springframework.cache.CacheManager} implementation * backed by Redisson instance. * <p> * 修改 RedissonSpringCacheManager 源码 * 重写 cacheName 处理方法 支持多参数 * */ @SuppressWarnings("unchecked") p

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值