JAVA開発メモ
Ehcache のバックアップソース(No.1)
 

[トップ|一覧|単語検索|最終更新|バックアップ|ヘルプ]

*概要
#contents
[[Ehcache:http://ehcache.sourceforge.net/]]は軽量、高速を特徴とするオープンソースのキャッシュシステムです。
**対応JDK
JDK1.2、1.3、1.4、5.0 (JDK1.1は未対応)

*NEWS
-2004/09/28 - ehcache 1.0リリース
--Added SelfPopulatingCacheManager to the constructs package.
--Added a new diskExpiryThreadIntervalSeconds configuration option to ehcache.xml, to allow tuning of the expiry thread per cache. 
--Added a new persistent option for the DiskStore. When enabled, diskPersistent makes Caches persistent between JVM restarts. It enables very long held caches to be configured, useful for very expensive and/or long lived cache entries. 
--Improved code coverage. See clover coverage report. 
--New checkstyle rules, using checkstyle 3.4. Many additional checks have been added and code cleanups done to make ehcache more standards compliant and understandable than ever.

*情報源
-[[公式サイト:http://ehcache.sourceforge.net/]]
-[[ドキュメント:http://ehcache.sourceforge.net/documentation/]]

*サンプル
**net.sf.ehcache.CacheManagerクラス
クラスパス直下の定義ファイル(ehcache.xml)より生成する。
 CacheManager manager = CacheManager.getInstance();
クラスパス配下の任意の定義ファイルを指定して生成する。
 URL url = getClass().getResource("/package/anothername.xml");
 CacheManager manager = CacheManager.create(url);
定義ファイルのファイルパス指定より生成する。
 CacheManager manager = CacheManager.create("src/config/ehcache.xml");
CacheManagerを終了する。
 manager.shutdown();

**net.sf.ehcache.Cachesクラス
定義ファイルで定義したキャッシュ名"sampleCache1"のキャッシュを取得する。
 Cache cache = manager.getCache("sampleCache1");
新規にキャッシュ名"test"のキャッシュを生成し、CacheManagerに登録する。
 Cache cache = new Cache("test", 1, true, false, 5, 2);
 manager.addCache(cache);

**net.sf.ehcache.Elementクラス
新規にElementを生成し、キーと値を設定してキャッシュする。(キーも値もシリアライズ可能なオブジェクト)
 Element element = new Element("key1", "value1");
 cache.put(element);
キャッシュからキーよりElementを取得する。
 Element element = cache.get("key1");

*定義ファイル
 <ehcache>
   <diskStore path="java.io.tmpdir"/>
   <defaultCache
       maxElementsInMemory="10000"
       eternal="false"
       timeToIdleSeconds="120"
       timeToLiveSeconds="120"
       overflowToDisk="true"
       />
   <cache name="my.package.Class"
       maxElementsInMemory="10000"
       eternal="false"
       timeToIdleSeconds="300"
       timeToLiveSeconds="600"
       overflowToDisk="true"
       />
 </ehcache>
**diskStoreタグ
|java.io.tmpdir|デフォルトの一時ディレクトリ|
|user.home|ユーザのホームディレクトリ|
|user.dir|ユーザのカレントディレクトリ|
**defaultCacheタグ
|maxElementsInMemory|メモリ上にキャッシュするオブジェクトの最大数|
|eternal|キャッシュオブジェクトの有効期限の有無(true:無)|
|timeToIdleSeconds|未アクセスの削除期限[sec]|
|timeToLiveSeconds|キャッシュオブジェクトの寿命[sec]|
|overflowToDisk|maxElementsInMemoryを超えた時のDisk保持有無(true:有)|
**cacheタグ
|name|キャッシュの名称|
|その他|defaultCacheと同じ|

トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS

Modified by MT22(Moriwaki Takashi)

"PukiWiki" 1.3.7 Copyright © 2001,2002,2003 PukiWiki Developers Team. License is GNU/GPL.
Based on "PukiWiki" 1.3 by sng
Powered by PHP 5.3.29

HTML convert time to 0.002 sec.