SpringBoot缓存
作者:互联网
一、JSR-107规范(接口)
Java Caching定义了5个核心接口,分别是CachingProvider, CacheManager, Cache, Entry 和 Expiry。
1、CachingProvider(缓存提供者)
CachingProvider定义了创建、配置、获取、管理和控制多个CacheManager。一个应用可以在运行期访问多个CachingProvider。
2、CacheManager(缓存管理器)
CacheManager定义了创建、配置、获取、管理和控制多个唯一命名的Cache,这些Cache存在于CacheManager的上下文中。一个CacheManager仅被一个CachingProvider所拥有。
3、Cache(缓存)
Cache是一个类似Map的数据结构并临时存储以Key为索引的值。一个Cache仅被一个CacheManager所拥有。
4、Entry(缓存记录中的一条数据)
Entry是一个存储在Cache中的key-value对。
5、Expiry(缓存的有效期)
Expiry每一个存储在Cache中的条目有一个定义的有效期。一旦超过这个时间,条目为过期的状态。一旦过期,条目将不可访问、更新和删除。缓存有效期可以通过ExpiryPolicy设置
二、Spring缓存抽象
Spring简化了JSR107的缓存接口,定义了Cache和CacheManager接口来统一不同的缓存技术。
1、CacheManager(缓存管理器)
缓存管理器,用于管理各种Cache组件
2、Cache(缓存接口)
定义缓存操作,实现有RedisCache、EhCacheCache等
3、缓存注解
1.@Cachecble
主要针对方法配置,能够根据方法的请求参数对结果进行缓存。
2.@CacheEvict
轻功缓存
3.@CachePut
保证方法被调用,又希望结果被缓存
4.@EnableCachING
开启基于注解的缓存
4、重要概念
1.KeyGenerator(缓存key生成策略)
2.serialize(序列化)
三、SpringBoot整合Redis
标签:缓存,SpringBoot,Cache,接口,CachingProvider,CacheManager,定义 来源: https://blog.csdn.net/qq_38173650/article/details/117932480