一、导入依赖
<dependency>
<groupId>com.github.ben-manes.caffeine</groupId>
<artifactId>caffeine</artifactId>
<version>2.9.3</version>
</dependency>
二、添加配置
@Configuration
public class CacheConfig {
@Bean(name = "caffeineCache")
public Cache<String, String> caffeineCache() {
return Caffeine.newBuilder()
// 设置最后一次写入或访问后经过固定时间过期
.expireAfterWrite(60, TimeUnit.DAYS)
// 初始的缓存空间大小
.initialCapacity(100)
// 缓存的最大条数
.maximumSize(500)
.build();
}
}
三、直接使用
@RestController
public class Controller {
@Resource(name = "caffeineCache")
private Cache<String, String> caffeineCache;
@GetMapping("/query")
public String query() {
String key = "key";
// 存入本地缓存
String str = caffeineCache.put(key, "缓存数据");
// 取出数据
String res = caffeineCache.getIfPresent(key);
return res;
}
}