Spring cache是一个框架,实现了基于注解的缓存功能,只需要简单地加一个注解,就能实现缓存功能。
Spring Cache提供了一层抽象,底层可以切换不同的cache实现。具体就是通过CacheManager接口来统一不同的缓存技术。
CacheManager是Spring提供的各种缓存技术抽象接口。
在我们使用任意一个实现的CacheManager的时候,需要注册实现的CacheManager的Bean
public EhCacheCacheManager cacheCacheManager(CacheManager cacheManager){
return new EhCacheCacheManager(cacheManager);
}
Spring Cache常用注解
开启声明式缓存支持只需要在配置类上使用@EnableCaching注解即可
@Configuration
@EnableCaching
public class BeanConfig {
}
Springboot支持以"spring.cache"为前缀的属性来配置缓存,再不做任何额外的情况下,默认使用的是SimpleCacheConfiguration
spring.cache.type= #可选generic , ehcache ,hazelcast,infinispan,jcache,redis,guava,simple,none。
spring.cache.cache-name= #程序启动时创建的缓存名称
spring.cache.ehcache.config = #ehcache 配置文件的地址
spring.cache.hazelcast.config = #hazelcast 配置文件的地址
spring.cache.infinispan.config = #infinispan 配置文件的地址
spring.cache.jcache.config = #jcache 配置文件的地址