Spring Boot 整合 Caffeine 本地缓存及 Spring Cache 注解的使用
import com.github.benmanes.caffeine.cache.Caffeine;
import org.springframework.cache.CacheManager;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.cache.caffeine.CaffeineCache;
import org.springframework.cache.support.SimpleCacheManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.concurrent.TimeUnit;
@Configuration
@EnableCaching
public class CachingConfig {
@Bean
public CacheManager cacheManager() {
CaffeineCache userCache = new CaffeineCache("users",
Caffeine.newBuilder()
.expireAfterWrite(10, TimeUnit.MINUTES)
.maximumSize(100)
.build());
return new SimpleCacheManager(userCache);
}
}
这段代码定义了一个配置类,其中使用了Caffeine本地缓存来创建一个名为"users"的缓存。缓存将在写入后10分钟过期,并且最多可以存储100个元素。这个配置类通过@EnableCaching
注解开启了Spring Cache的支持。在实际的应用中,你可以使用@Cacheable
, @CachePut
, @CacheEvict
等注解来标注你的方法,以便于Spring Framework自动处理缓存的增、删、查操作。
评论已关闭