EHCache 初步使用指南
生活随笔
收集整理的這篇文章主要介紹了
EHCache 初步使用指南
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
EhCache 是一個(gè)純Java的進(jìn)程內(nèi)緩存框架,具有快速、精干等特點(diǎn),是Hibernate中默認(rèn)的CacheProvider。
下圖是 Ehcache 在應(yīng)用程序中的位置:
?
主要的特性有:
1. 快速.
2. 簡(jiǎn)單.
3. 多種緩存策略
4. 緩存數(shù)據(jù)有兩級(jí):內(nèi)存和磁盤(pán),因此無(wú)需擔(dān)心容量問(wèn)題
5. 緩存數(shù)據(jù)會(huì)在虛擬機(jī)重啟的過(guò)程中寫(xiě)入磁盤(pán)
6. 可以通過(guò)RMI、可插入API等方式進(jìn)行分布式緩存
7. 具有緩存和緩存管理器的偵聽(tīng)接口
8. 支持多緩存管理器實(shí)例,以及一個(gè)實(shí)例的多個(gè)緩存區(qū)域
9. 提供Hibernate的緩存實(shí)現(xiàn)
10. 等等
?
http://nakata-yf.iteye.com/blog/23536
EHCache 初步使用指南
HibernateCacheXMLApache配置管理
EHCache 初步使用指南- -寫(xiě)的比較初級(jí),后續(xù)將加入對(duì)配置文件,內(nèi)存/磁盤(pán)存儲(chǔ),優(yōu)化,虛擬機(jī)宕機(jī),日志等的說(shuō)明
1. EHCache 的特點(diǎn),系統(tǒng)要求及安裝
是一個(gè)純Java ,過(guò)程中(也可以理解成插入式)緩存實(shí)現(xiàn)
Hibernate2.1,Spring支持EHcache嵌入,自我感覺(jué)Hibernate2.1 + EHCache 很過(guò)癮。。(測(cè)試結(jié)果比Hibernate+JCS 好多了)
支持多CPU服務(wù)器
其版本發(fā)布前進(jìn)行了產(chǎn)品級(jí)測(cè)試
支持:運(yùn)行環(huán)境jdk1.2到5版本(源代碼編譯需1.4或1.5 版本)
jdk1.4和1.5 版本,需加入apache 的 commons-logging類庫(kù) http://jakarta.apache.org/commons/logging.html
jdk1.2和1.3 版本,需加入commons-collections 2.1 版本 http://jakarta.apache.org/commons/collections.html
和 xerces (xml-apis.jar and xercesImpl.jar), 2.5 版本 http://xml.apache.org/xerces2-j/
如果運(yùn)行環(huán)境為IBM JDK1.4版本上的IBM Websphere 5.1,也需加入 commons-collections 類庫(kù)(如需要)
單獨(dú)安裝Ehcache ,需把ehcache-X.X.jar 和相關(guān)類庫(kù)方到classpath中。
如項(xiàng)目已安裝了Hibernate2.1 ,則不需要做什么。。直接可以使用Ehcache
Cache 存儲(chǔ)方式 :內(nèi)存或磁盤(pán)
2. 單獨(dú)使用 EHCache
使用CacheManager 創(chuàng)建并管理Cache
使用默認(rèn)配置文件創(chuàng)建
CacheManager manager = CacheManager.create();
使用指定配置文件創(chuàng)建
CacheManager manager = CacheManager.create("src/config/ehcache.xml");
從classpathq找尋配置文件并創(chuàng)建
URL url = getClass().getResource("/anothername.xml");
CacheManager manager = CacheManager.create(url);
通過(guò)輸入流創(chuàng)建
InputStream fis = new FileInputStream(new File("src/config/ehcache.xml").getAbsolutePath());
try {
manager = CacheManager.create(fis);
} finally {
fis.close();
}
卸載CacheManager ,關(guān)閉Cache
manager.shutdown();
使用Caches
取得配置文件中預(yù)先 定義的sampleCache1設(shè)置,生成一個(gè)Cache
Cache cache = manager.getCache("sampleCache1");
設(shè)置一個(gè)名為test 的新cache,test屬性為默認(rèn)
CacheManager manager = CacheManager.create();
manager.addCache("test");
設(shè)置一個(gè)名為test 的新cache,并定義其屬性
CacheManager manager = CacheManager.create();
Cache cache = new Cache("test", 1, true, false, 5, 2);
manager.addCache(cache);
往cache中加入元素
Element element = new Element("key1", "value1");
cache.put(new Element(element);
從cache中取得元素
Element element = cache.get("key1");
3. 在 Hibernate 中運(yùn)用EHCache
hibernate.cfg.xml中需設(shè)置如下:
2.1版本加入
net.sf.ehcache.hibernate.Provider
2.1以下版本加入
net.sf.hibernate.cache.EhCache
在 Hibernate 映射文件的每個(gè)需要Cache的Domain中
name="com.somecompany.someproject.domain.Country"
table="ut_Countries"
dynamic-update="false"
dynamic-insert="false"
>
...
加入類似如下格式信息:
比如:
然后在ehcache.xml中加入
maxElementsInMemory="10000"
eternal="false"
timeToIdleSeconds="300"
timeToLiveSeconds="600"
overflowToDisk="false"
/>
?
總結(jié)
以上是生活随笔為你收集整理的EHCache 初步使用指南的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 使用 CORBA 和 Java IDL
- 下一篇: JFree chart