ace-cache基于 Spring Boot 的注解緩存
ace-cache
基于spring boot上的注解緩存,自帶輕量級緩存管理頁面。 @Cache比spring cache更輕量的緩存,采用fastjon序列化與反序列化,以json串存于緩存之中。 ace-cache可以快速用于日常的spring boot應(yīng)用或服務(wù)之中,快速查看到緩存的狀態(tài)。
使用手冊
緩存配置
1、配置redis數(shù)據(jù)源,application.yml文件
redis: pool: maxActive: 300 maxIdle: 100 maxWait: 1000 host: 127.0.0.1 port: 6379 password: timeout: 2000 # 服務(wù)或應(yīng)用名 sysname: ace enable: true database: 0
緩存開啟
2、開啟AOP掃描
@ComponentScan({"com.ace.cache"})
@EnableAspectJAutoProxy
緩存使用
3、在Service上進(jìn)行@Cache注解或@CacheClear注解
注解說明
配置緩存:@Cache
| 注解參數(shù) | 類型 | 說明 |
|---|---|---|
| key | 字符串 | 緩存表達(dá)式,動(dòng)態(tài)運(yùn)算出key |
| expires | 整形 | 緩存時(shí)長,單位:分鐘 |
| desc | 描述 | 緩存說明 |
| parser | Class<? extends ICacheResultParser> | 緩存返回結(jié)果自定義處理類 |
| generator | Class<? extends IKeyGenerator> | 緩存鍵值自定義生成類 |
清除緩存:@CacheClear
| 注解參數(shù) | 類型 | 說明 |
|---|---|---|
| pre | 字符串 | 清除某些前綴key緩存 |
| key | 字符串 | 清除某個(gè)key緩存 |
| keys | 字符串?dāng)?shù)組 | 清除某些前綴key緩存 |
| generator | Class<? extends IKeyGenerator> | 緩存鍵值自定義生成類 |
默認(rèn)key動(dòng)態(tài)表達(dá)式說明
| 表達(dá)式舉例 | 說明 | 舉例 |
|---|---|---|
| @Cache(key="user:{1}") public User getUserByAccount(String account) |
{1}表示獲取第一個(gè)參數(shù)值 {2}表示獲取第二個(gè)參數(shù)值 ……依此類推 |
若:account = ace,則:key = user:ace |
| @CacheClear(pre="user{1.account}") User saveOrUpdate(User user) |
{1}表示獲取第一個(gè)參數(shù)值 {1.xx}表示獲取第一個(gè)參數(shù)中的xxx屬性 |
若:account=ace,則:key = user:ace |
輕量管理端
訪問地址:http://localhost:8080/cache
管理端批量或前綴清除ace-cache注冊的緩存,同時(shí)也可以快速預(yù)覽緩存的數(shù)據(jù)內(nèi)容,也可以對緩存的失效時(shí)間進(jìn)行延長。
Demo
1、在src/main/test中展開的相關(guān)示例代碼
CacheTest是核心啟動(dòng)類
service包是緩存調(diào)用例子,包含自定義表達(dá)式和結(jié)果解析、注解的使用
評論
圖片
表情
