# CacheGroup 分组缓存
MornBoot提供基于SpringCache (opens new window)的分组缓存CacheGroup
,用于缓存的集中控制。适用于对一个Cache
中不同职责的数据,有分类管理的场景。CacheGroup
拥有比原生API更为灵活的缓存生成和清除方式,更贴近实际使用环境。
Since:v1.2.1
# 推荐配置
Maven
支持更多的缓存中间件
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-cache</artifactId>
</dependency>
# 创建缓存分组
使用CacheGroups
创建缓存组。CacheGroup
用于保存有一定逻辑关系的数据。
CacheGroup cacheGroup = CacheGroups.cacheGroup("test");
CacheGroup
支持与SpringCache (opens new window)混合使用,同时也默认支持SpringCache (opens new window)支持的所有缓存中间件,以及实现CacheManager
的自定义缓存。
# 存储数据
依据group
、key
缓存数据,group
用于区分不同职责的数据,例如:用户的基本信息和头像地址。
cacheGroup.put("name", "1", "Timely");
cacheGroup.put("name", "2", "Rain");
cacheGroup.put("name", "3", "Milk");
cacheGroup.put("iconUrl", "1", 1);
cacheGroup.put("iconUrl", "2", 2);
cacheGroup.put("iconUrl", "3", 3);
伴随
CacheGroup
会创建名为test.name
、test.iconUrl
的Cache
,因此可以与SpringCache (opens new window)提供的CacheManager
或注解混合使用。
# 更新数据
依据group
、key
更新数据。
cacheGroup.put("name", "1", "Timely Again");
# 清除数据
CacheGroup
拥有比原生API更为灵活的缓存清除方式,更贴近实际使用环境。
cacheGroup.clear("name", "1"); // 清除用户1的名称
cacheGroup.clearKey("2"); // 清除用户2的名称及头像地址
cacheGroup.clearGroup("iconUrl"); // 清除所有用户的名称及头像地址