java本地缓存怎么设置过期时间
在Java中,可以通过使用CacheBuilder
类来创建本地缓存并设置过期时间。以下是一个示例代码:
import com.google.common.cache.Cache;import com.google.common.cache.CacheBuilder;import java.util.concurrent.TimeUnit;public class LocalCacheExample {public static void main(String[] args) {// 创建一个本地缓存,设置最大缓存大小为100,过期时间为10分钟Cache<String, String> cache = CacheBuilder.newBuilder().maximumSize(100).expireAfterWrite(10, TimeUnit.MINUTES).build();// 将键值对放入缓存中cache.put("key1", "value1");cache.put("key2", "value2");// 从缓存中获取值String value1 = cache.getIfPresent("key1");String value2 = cache.getIfPresent("key2");System.out.println("value1: " + value1);System.out.println("value2: " + value2);// 休眠11分钟,此时缓存中的数据应该已经过期try {Thread.sleep(11 * 60 * 1000);} catch (InterruptedException e) {e.printStackTrace();}// 再次尝试获取缓存中的值value1 = cache.getIfPresent("key1");value2 = cache.getIfPresent("key2");System.out.println("value1 after expiration: " + value1);System.out.println("value2 after expiration: " + value2);}}
在上面的代码中,使用CacheBuilder.newBuilder()
来创建一个缓存构建器,然后通过调用maximumSize()
方法设置缓存的最大大小,expireAfterWrite()
方法设置缓存数据的过期时间。最后通过调用build()
方法来构建缓存对象。
需要注意的是,以上示例中使用了Guava库中的CacheBuilder
来创建本地缓存,需要在项目中引入相应的依赖。
下一篇:centos怎么查找文件夹位置
Java
webacc.exe是什么文件?webacc.exe是不是病毒
WINSYS.vbs是什么文件?WINSYS.vbs是不是病毒
winssh.exe是什么文件?winssh.exe是不是病毒
wt.exe是什么文件?wt.exe是不是病毒
winsysetm.exe是什么文件?winsysetm.exe是不是病毒
winstrve.exe是什么文件?winstrve.exe是不是病毒
winsysupd7.exe是什么文件?winsysupd7.exe是不是病毒
winsysupd.exe是什么文件?winsysupd.exe是不是病毒
winsysupd2.exe是什么文件?winsysupd2.exe是不是病毒
winsysupd8.exe是什么文件?winsysupd8.exe是不是病毒