我有以下代码:
new MapMaker().expireAfterAccess(SESSION_EXPIRATION, TimeUnit.MILLISECONDS).makeMap();
在番石榴10中,它表示已弃用,应由CacheBuilder
取代。这是什么新语法?
答案 0 :(得分:3)
阅读文档,我想你可能只是使用类似的方法,并传递一个始终抛出异常的加载器。然后,您可以调用asMap()
来获取一个地图,在那里您可以放置您的密钥和值,并让它由缓存支持。
答案 1 :(得分:3)
新语法看起来像
Cache<K, V> cache = CacheBuilder.newBuilder().expireAfterAccess(SESSION_EXPIRATION, TimeUnit.MILLISECONDS).build();
答案 2 :(得分:1)
Guava版本11.0将以CacheBuilder.build()
:
http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/cache/CacheBuilder.html
在此之前,遗憾的是必须使用asMap()
。