本文介绍: caffeine是一个高性能的缓存组件,在需要缓存数据,但数据量不算太大,不想引入redis的时候,caffeine就是一个不错的选择。可以把caffeine理解为一个简单的redis。
caffeine是一个高性能的缓存组件,在需要缓存数据,但数据量不算太大,不想引入redis的时候,caffeine就是一个不错的选择。可以把caffeine理解为一个简单的redis。
1、导入依赖
<!-- https://mvnrepository.com/artifact/com.github.ben-manes.caffeine/caffeine -->
<dependency>
<groupId>com.github.ben-manes.caffeine</groupId>
<artifactId>caffeine</artifactId>
<version>2.9.3</version>
</dependency>
导入是要注意版本,最开始我用的版本是3.1.1,不过启动是的时候会报错,这是因为我用的是jdk1.8,需要降低一下版本,所以就换成了2.9.3
类文件具有错误的版本 55.0, 应为 52.0
请删除该文件或确保该文件位于正确的类路径子目录中。
2、创建测试类
public class CaffeineTest {
//创建缓存对象并设置过期时间为10秒
private static Cache<Integer, String> cache = Caffeine.newBuilder().expireAfterWrite(Duration.ofSeconds(10)).build();
public static void main(String[] args) throws InterruptedException {
cache.put(1,"张三");
cache.put(2,"李四");
cache.put(3,"王五");
getTest(1);
getTest(2);
getTest(3);
Thread.sleep(5000);
getTest(1);
getTest(2);
getTest(3);
Thread.sleep(6000);
getTest(1);
getTest(2);
getTest(3);
}
private static void getTest(Integer key) {
String ifPresent = cache.getIfPresent(key);
System.out.println(DateUtil.now() +" : "+ ifPresent);
}
}
测试结果
3、测试结果
搞定!
原文地址:https://blog.csdn.net/lp840312696/article/details/136024282
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_67555.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。