提供一个Caffeine的工具类
时间: 2024-01-20 17:04:35 浏览: 26
好的,以下是一个简单的 Caffeine 工具类的示例代码,可以帮助您更方便地使用 Caffeine 缓存库:
```java
import com.github.benmanes.caffeine.cache.Cache;
import com.github.benmanes.caffeine.cache.Caffeine;
import java.util.concurrent.TimeUnit;
public class CaffeineUtil {
private static Cache<String, Object> cache;
static {
cache = Caffeine.newBuilder()
.expireAfterWrite(10, TimeUnit.MINUTES) // 设置缓存过期时间为 10 分钟
.maximumSize(1000) // 设置缓存最大容量为 1000
.build();
}
/**
* 将数据存入缓存
* @param key 缓存键
* @param value 缓存值
*/
public static void put(String key, Object value) {
cache.put(key, value);
}
/**
* 从缓存中获取数据
* @param key 缓存键
* @return 缓存值
*/
public static Object get(String key) {
return cache.getIfPresent(key);
}
/**
* 从缓存中删除数据
* @param key 缓存键
*/
public static void remove(String key) {
cache.invalidate(key);
}
}
```
使用方法:
```java
CaffeineUtil.put("key1", "value1"); // 将数据存入缓存
Object value = CaffeineUtil.get("key1"); // 从缓存中获取数据
CaffeineUtil.remove("key1"); // 从缓存中删除数据
```
这只是一个简单的示例,您可以根据自己的需求修改缓存过期时间、最大容量等属性。另外,Caffeine 还提供了丰富的缓存策略和回调函数等功能,您可以查阅官方文档了解更多信息。