概述
Caffeine是一款高性能的Java本地缓存库,具有以下主要优点:
-
卓越性能:Caffeine经过精心优化,提供出色的数据存储和检索性能。
-
内存管理:支持灵活的内存管理,可配置最大缓存大小和过期策略。
-
并发支持:适用于多线程环境,无需担心线程安全问题。
-
灵活配置:提供丰富的配置选项,可根据需求自定义缓存行为。
maven
<dependency>
<groupId>com.github.ben-manes.caffeine</groupId>
<artifactId>caffeine</artifactId>
<version>2.9.2</version>
</dependency>
基础使用
- 本地缓存数量设置
- 超时设置
public class CaffeineCacheExample {
public static void main(String[] args) {
// 创建一个Caffeine缓存,指定最大缓存大小为100,可以根据需求调整
Cache<String, String> cache = Caffeine.newBuilder()
// 最大100,超过则放弃老的
.maximumSize(100)
// 10 分钟过期
.expireAfterAccess(10, TimeUnit.MINUTES)
.build();
// 向缓存中放入数据
cache.put("key1", "value1");
// 从缓存中获取数据
String value1 = cache.getIfPresent("key1");
System.out.println("Value1: " + value1); // 输出:Value1: value1
}
}