java cache API的5個核心接口:CachingProvider,CachingManager,Cache,Entry,ExpiryPolicy
CachingProvider:
緩存提供者定義創建,配置,得到,管理,控制一個或者多個CacheManager的機制。一個應用程序能使用一個或者多個CacheProvider在運行時。
CachingManager:
緩存管理者定義創建,配置,得到,管理,控制一個或者多個惟一名稱的Caches,在CacheManager的上下文中。一個CacheManager被一個CachingProvider擁有。
Cache:
Cache有點像一個Map的數據結構,准許臨時存儲基於K-V結構的數據,例如像:java.util.Map的數據結構。一個Cache被一個CacheManger擁有。
Entry:
Entry是有緩存存儲的單個鍵值對元素
ExpiryPolicy:
ExpiryPolicy被用於設置過時策略java
舉例:redisredis
舉例:JVM本地緩存guavaspring
spring緩存聲明的註解:@Cacheable,@CacheEvict,@CachePut,@Caching,@CacheConfig緩存
@Cacheable:數據結構
@Cacheable配置數據對象ide
@CacheEvict:spa
@CacheEvict刪除緩存數據對象
@CachePut:接口
@CachePut在不影響方法執行的狀況下,更新緩存信息原理
@Caching:
@Caching將應用與方法的多個緩存從新分組
@CacheConfig:
@CacheConfig共享一些常見的緩存配置,提供類級別的配置,能夠共享緩存名稱