我有下面的代碼使用expireAfterAccess:
new MapMaker().expireAfterAccess(SESSION_EXPIRATION, TimeUnit.MILLISECONDS).makeMap();
如何與CacheBuilder番石榴
番石榴10它說,它已經過時,應由CacheBuilder
更換。這是什麼新的語法?
我有下面的代碼使用expireAfterAccess:
new MapMaker().expireAfterAccess(SESSION_EXPIRATION, TimeUnit.MILLISECONDS).makeMap();
如何與CacheBuilder番石榴
番石榴10它說,它已經過時,應由CacheBuilder
更換。這是什麼新的語法?
新的語法看起來像
Cache<K, V> cache = CacheBuilder.newBuilder().expireAfterAccess(SESSION_EXPIRATION, TimeUnit.MILLISECONDS).build();
閱讀文檔,我想你可能只是使用類似的方法,並傳遞一個總是拋出異常的加載器。然後,您可以撥打asMap()
來獲取地圖,在那裏您可以放置您的密鑰和值,並使其支持緩存。
番石榴11.0版本將有CacheBuilder.build()
:
http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/cache/CacheBuilder.html
直到後來很遺憾,必須使用asMap()
。
Cache.asMap()把()按10.0.1:http://groups.google.com/group/guava-discuss/browse_thread/thread/f01f7583bb4422d7 –
謝謝@eneveu。我從我的答案中刪除了警告。 –