日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

EHCache 初步使用指南

發(fā)布時(shí)間:2024/4/17 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。