使用ehcache

openkk 13年前發布 | 25K 次閱讀 Ehcache 緩存組件

 一直以來懶得配置緩存,基本的緩存也就是orm層,基本上都交給hibernate去配置了。這段時間,感覺頁面速度太慢了,還是需要使用緩存。現在的緩存工具也挺多的,較不錯的屬ehcache和oscache了。決定分別研究一下。
    先來說說ehcache,目前的版本為1.2,已經支持集群了。對于ehcache的使用,感覺很容易上手,基本上都是配置。以前在hibernate的時候配置過,所以也不是很陌生。API也挺簡單,如下的api:
    CacheManager主要的緩存管理類,一般一個應用為一個實例,如下
    CacheManager.create();也可以使用new CacheManager的方式創建
     默認的配置文件為ehcache.xml文件,也可以使用不同的配置:
     
 
CacheManager manager = new CacheManager("src/config/other.xml");    

緩存的創建,采用自動的方式
 
CacheManager singletonManager = CacheManager.create();
singletonManager.addCache("testCache");
Cache test = singletonManager.getCache("testCache");    

或者直接創建Cache

 
CacheManager singletonManager = CacheManager.create();
Cache memoryOnlyCache = new Cache("testCache", 5000, false, false, 5, 2);
manager.addCache(memoryOnlyCache);
Cache test = singletonManager.getCache("testCache");    

刪除cache
 
CacheManager singletonManager = CacheManager.create();
singletonManager.removeCache("sampleCache1");    

在使用ehcache后,需要關閉
 
CacheManager.getInstance().shutdown()    

caches 的使用

 
Cache cache = manager.getCache("sampleCache1");    

執行crud操作

 
Cache cache = manager.getCache("sampleCache1");
Element element = new Element("key1", "value1");
cache.put(element);    

update
 
Cache cache = manager.getCache("sampleCache1");
cache.put(new Element("key1", "value1");
//This updates the entry for "key1"
cache.put(new Element("key1", "value2");    

get Serializable

 
Cache cache = manager.getCache("sampleCache1");
Element element = cache.get("key1");
Serializable value = element.getValue();    

get non serializable
 
Cache cache = manager.getCache("sampleCache1");
Element element = cache.get("key1");
Object value = element.getObjectValue();    

remove
 
Cache cache = manager.getCache("sampleCache1");
Element element = new Element("key1", "value1"
cache.remove("key1");    

不過緩存還是基本上以配置方式為主,下一篇文章將會說明ehcache如何配置

 本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!