Dev@Free

          zJun's Tech Weblog

          [Jakarta Commons] 使用LRUMap

          使用過開源緩存包(如:EHCache)都知道,緩存策略中主要分為FIFO,LRU,LFU等幾種。而Jakarta Commons中提供的 org.apache.commons.collections.map.LRUMap 可用來保存最近使用的幾條記錄,提供了LRU(Least Recently Used)緩存策略的實現。

          具體使用方法如下:

          import ?java.util.Map;
          import
          ?org.apache.commons.collections.map.LRUMap;

          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),所以被剔除了緩存.

          posted on 2006-07-31 14:52 zJun's帛羅閣 閱讀(2932) 評論(1)  編輯  收藏 所屬分類: 開發環境

          評論

          # re: [Jakarta Commons] 使用LRUMap 2009-02-27 10:37 Yangtze

          你的結果似乎有錯誤,最后Map中的元素是

          { TSC =0.0010, LU =23.3, P =10.23, MSFT =0.03, AA =203.2}
            回復  更多評論   

          導航

          <2006年7月>
          2526272829301
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          統計

          常用鏈接

          留言簿(15)

          隨筆分類

          隨筆檔案

          相冊

          收藏夾

          博客

          文檔

          站點

          論壇

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 神池县| 肇东市| 噶尔县| 邓州市| 介休市| 化德县| 濮阳县| 汕头市| 新邵县| 灵石县| 金平| 罗甸县| 桃源县| 永年县| 九龙县| 普兰店市| 富蕴县| 汶上县| 同德县| 胶州市| 平山县| 杨浦区| 巫溪县| 周至县| 卓资县| 宿松县| 普定县| 青铜峡市| 九江县| 昭平县| 西昌市| 陕西省| 绥德县| 新源县| 朝阳区| 罗甸县| 泌阳县| 鄂伦春自治旗| 陆川县| 汾阳市| 华亭县|