LRUMap(Least Recently Used Cache)可用來保存最近使用的幾條記錄,例如:保存Blog中的最近10條留言.大多數情況用作緩存(如: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 ) ); 此時,緩存中的元素為:
[CSCO]
[MSFT]
[TSC]
[LU]
[P]
[AA]
由于LRU最近沒有被訪問,所以當AA加入時,由于超過了緩存的最大容量(5),所以被剔除了緩存.
參考資料:
<<Jakarta Commons Cookbook>>
By Timothy M. O'Brien
Publisher : O'Reilly
Pub Date : November 2004
ISBN : 0-596-00706-X
Pages : 400
posted on 2005-12-15 19:59
ZhuJun 閱讀(720)
評論(0) 編輯 收藏 所屬分類:
開發手記 、
開源項目