Spring-Boot-内存缓存Caffiene自定义CacheManager
import org.springframework.cache.CacheManager;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.github.benmanes.caffeine.cache.Caffeine;
import com.github.benmanes.caffeine.cache.CaffeineSpec;
@Configuration
@EnableCaching
public class CacheConfig {
@Bean
public CacheManager cacheManager() {
// 使用自定义的CaffeineSpec
CaffeineSpec caffeineSpec = CaffeineSpec.parse("maximumSize=500, expireAfterWrite=10m");
Caffeine<Object, Object> caffeineBuilder = Caffeine.from(caffeineSpec);
// 创建自定义CacheManager,这里使用的是SimpleCacheManager,也可以自定义实现
return new SimpleCacheManager(new ConcurrentMapCacheManager(caffeineBuilder));
}
}
这段代码定义了一个配置类,其中创建了一个自定义的CacheManager
,使用了Caffeine作为底层缓存机制,并且定制了缓存的最大数目和写入后的过期时间。这个配置类被@EnableCaching
注解标记,开启了Spring的缓存支持。在实际使用中,可以根据需要替换SimpleCacheManager
为自定义的CacheManager
实现。
评论已关闭