1 Star 0 Fork 41

江北青衣 / icloud-cache

forked from iBytePro / mPass-cache 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 3.15 KB
一键复制 编辑 原始数据 按行查看 历史
lishangzhi 提交于 2018-12-04 11:42 . 更新 README.md

icloud-cache

基于spring boot上的注解缓存,自带轻量级缓存管理页面。
@Cache比spring cache更轻量的缓存,支持单个缓存设置过期时间,可以根据前缀移除缓存。
采用fastjson序列化与反序列化,以json串存于缓存之中。
icloud-cache可以快速用于日常的spring boot应用之中。

数据可视化展示(生产环境不建议使用)

输入图片说明

Redis 客户端查看

输入图片说明

Cache API 输入图片说明

使用手册

Maven依赖

<dependency>
    <groupId>com.gitee.ibyte</groupId>
    <artifactId>icloud-cache</artifactId>
    <version>0.0.2</version>
</dependency>

缓存配置

1、配置redis数据源,application.yml文件

#redis-cache 相关
redis:
    pool:
         maxActive: 300
         maxIdle: 100
         maxWait: 1000
    host: 127.0.0.1
    port: 6379
    password:
    timeout: 2000
    # 服务或应用名
    sysName: icloud
    enable: true
    database: 0

缓存开启

2、开启AOP扫描

@EnableiCloudCache

缓存使用

3、在Service上进行@Cache注解或@CacheClear注解

注解说明

配置缓存:@Cache

注解参数 类型 说明
key 字符串 缓存表达式,动态运算出key
expires 整形 缓存时长,单位:分钟
desc 描述 缓存说明
parser Class<? extends ICacheResultParser> 缓存返回结果自定义处理类
generator Class<? extends IKeyGenerator> 缓存键值自定义生成类

清除缓存:@CacheClear

注解参数 类型 说明
pre 字符串 清除某些前缀key缓存
key 字符串 清除某个key缓存
keys 字符串数组 清除某些前缀key缓存
generator Class<? extends IKeyGenerator> 缓存键值自定义生成类

默认key动态表达式说明

表达式举例 说明 举例
@Cache(key="user:{1}")
public User getUserByAccount(String account)
{1}表示获取第一个参数值
{2}表示获取第二个参数值
……依此类推
若:account = icloud,则:key = user:icloud
@CacheClear(pre="user{1.account}")
User saveOrUpdate(User user)
{1}表示获取第一个参数值
{1.xx}表示获取第一个参数中的xxx属性
若:account=icloud,则:key = user:icloud

轻量管理端

访问地址:http://localhost:8080/cache
管理端批量或前缀清除icloud-cache注册的缓存,同时也可以快速预览缓存的数据内容,也可以对缓存的失效时间进行延长。

Demo

1、在src/main/test中展开的相关示例代码

CacheTest是核心启动类

service包是缓存调用例子,包含自定义表达式和结果解析、注解的使用

Java
1
https://gitee.com/JiangBeiQingYi/icloud-cache.git
git@gitee.com:JiangBeiQingYi/icloud-cache.git
JiangBeiQingYi
icloud-cache
icloud-cache
master

搜索帮助