手把手教学Guava cache,包教包会,不会我输一包辣条给你

 guava cache使用简介

     guava cache 是利用CacheBuilder类用builder模式构造出两种不同的cache加载方式CacheLoader,Callable,共同逻辑都是根据key是加载value。不同的地方在于CacheLoader的定义比较宽泛,是针对整个cache定义的,可以认为是统一的根据key值load value的方法,而Callable的方式较为灵活,允许你在get的时候指定load方法。看以下代码

 1         Cache<String,Object> cache = CacheBuilder.newBuilder()
 2                 .expireAfterWrite(10, TimeUnit.SECONDS).maximumSize(500).build();
 3  
 4          cache.get("key", new Callable<Object>() { //Callable 加载
 5             @Override
 6             public Object call() throws Exception {
 7                 return "value";
 8             }
 9         });
10  
11         LoadingCache<String, Object> loadingCache = CacheBuilder.newBuilder()
12                 .expireAfterAccess(30, TimeUnit.SECONDS).maximumSize(5)
13                 .build(new CacheLoader<String, Object>() {
14                     @Override
15                     public Object load(String key) throws Exception {
16                         return "value";
17                     }
18                 });    

猜你喜欢

转载自www.cnblogs.com/xxmyz/p/10119230.html