LRUMap(Least Recently Used Cache)可用來(lái)保存最近使用的幾條記錄,例如:保存Blog中的最近10條留言.大多數(shù)情況用作緩存(如:EHCache)的一種策略.具體使用方法如下:
import java.util.Map;
import org.apache.commons.collections.map.LRUMap;

cache = new LRUMap( 5 );

// Populate the cache with 5 stock prices
cache.put( "MSFT", new Float( 0.03 ) );
cache.put( "TSC", new Float( 0.001 ) );
cache.put( "LU", new Float( 23.30 ) );
cache.put( "CSCO", new Float( 242.20 ) );
cache.put( "P", new Float( 10.23 ) );
// Now use some of the entries in the cache
Float cscoPrice = (Float) cache.get( "CSCO" );
Float msPrice = (Float) cache.get( "MSFT" );
Float tscPrice = (Float) cache.get( "TSC" );
Float luPrice = (Float) cache.get( "LU" );
Float pPrice = (Float) cache.get( "P" );
Float msPrice2 = (Float) cache.get( "MSFT" );
// Add another price to the Map, this should kick out the LRU item.
cache.put( "AA", new Float( 203.20 ) ); 此時(shí),緩存中的元素為:
[CSCO]
[MSFT]
[TSC]
[LU]
[P]
[AA]
由于LRU最近沒(méi)有被訪問(wèn),所以當(dāng)AA加入時(shí),由于超過(guò)了緩存的最大容量(5),所以被剔除了緩存.
參考資料:
<<Jakarta Commons Cookbook>>
By Timothy M. O'Brien
Publisher : O'Reilly
Pub Date : November 2004
ISBN : 0-596-00706-X
Pages : 400