-
@Documented @Target(METHOD) @Retention(RUNTIME) public @interface Cached
标记在Service的缓存接口, 方法有以下限制:
1、方法返回类型不能是void/CompletableFuture<Void>
2、方法返回类型必须可json序列化
3、方法必须是protected/public
4、方法不能是final/static
远程缓存里中存放的key值为: {CachedManager.schema}:{Cached.name}:{Cached.key}- 从以下版本开始:
- 2.8.0
-
-
可选元素概要
可选元素 修饰符和类型 可选元素 说明 String
comment
备注String
localExpire
本地缓存过期时长, 0表示永不过期, -1表示不作本地缓存。String
localLimit
本地缓存数量上限, 小于1表示无上限
参数值支持方式:
100: 设置数值 ${env.cache.limit}: 读取系统配置项String
manager
缓存管理器名称LoadMode
mode
Service加载模式boolean
nullable
是否可以缓存null值String
remoteExpire
远程缓存过期时长, 0表示永不过期, -1表示不作远程缓存。TimeUnit
timeUnit
过期时长的时间单位
-
-
-
元素详细资料
-
name
String name
缓存的name- 返回:
- name
-
-
-
key
String key
缓存的key,支持参数动态组合,比如"key_#{id}"
'@'开头的key值视为CacheKeyGenerator对象名称- 返回:
- 键
- 另请参阅:
CachedKeyGenerator.key()
-
-
-
manager
String manager
缓存管理器名称- 返回:
- 名称
- 默认值:
- ""
-
-
-
localLimit
String localLimit
本地缓存数量上限, 小于1表示无上限
参数值支持方式:
100: 设置数值 ${env.cache.limit}: 读取系统配置项- 返回:
- 数量上限
- 默认值:
- "-1"
-
-
-
localExpire
String localExpire
本地缓存过期时长, 0表示永不过期, -1表示不作本地缓存。
参数值支持方式:
100: 设置数值 ${env.cache.expires}: 读取系统配置项- 返回:
- 过期时长
- 默认值:
- "-1"
-
-
-
remoteExpire
String remoteExpire
远程缓存过期时长, 0表示永不过期, -1表示不作远程缓存。
参数值支持方式:
100: 设置数值 ${env.cache.expires}: 读取系统配置项- 返回:
- 过期时长
- 默认值:
- "-1"
-
-
-
timeUnit
TimeUnit timeUnit
过期时长的时间单位- 返回:
- 时间单位
- 默认值:
- java.util.concurrent.TimeUnit.SECONDS
-
-
-
comment
String comment
备注- 返回:
- 备注
- 默认值:
- ""
-
-
-
mode
LoadMode mode
Service加载模式- 返回:
- 模式
- 默认值:
- org.redkale.service.LoadMode.ANY
-
-