Ehcache關鍵類

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

簡介
  
Ehcache 中的 CacheManager 是用來管理 Cache 的。而 Cache 中包含元素 Element ,而 Element 實質上就是一個鍵值對。 Cache 在物理方面的實現有內存實現和磁盤實現。
Ehcache關鍵類
 
CacheManager
 
CacheManager 包含 Cache ,而 Cache 反過來構成了 CacheManager 的要素。
 
·   CacheManager 創建模式: CacheManger 創建模式包含 singleton instance 倆種。
 
·       Simgleton Mode
 
從字面可理解為單例模式,這種模式只允許創建一個 CacheManger 實例。
 
·       Instance Mode
 
那這種模式從字面上理解也應該是實例化模式了。從 Ehcache-1.2 以來, CacheManager 有多種靜態創建方法。這樣我們就可以同時創建多個復雜的不同配置的 CacheManager
 
如果只是用內存來存儲 Cache ,那么沒有什么需要你特別考慮的。如果是用磁盤來緩存 Cache 的話,你就必須為 CacheManager 指定的磁盤路徑。當一個新的 CacheManager 被創建時,必須要確保磁盤路徑沒有被別的 CacheManager 使用。如果重復使用磁盤路徑,這個時候就會拋出 CacheException 。如果 CacheManger 配置成集群模式的,還要注意端口的指定。
 
·       Singletion Instance 混用
 
如果一個應用程序通過構造方法創建了一個 CacheManager 的實例,也調用了靜態創建方法,這個時候會,沒調用一次靜態創建方法就會返回一個 CacheManager Singleton 實例,所有的這些實例將會共存。
 
Ehcache
 
Ehcache 是一個接口,所有的 Cache 都實現了 Ehcache 。每個 Cache 都有自己的名字和特定的屬性以及包含著 Element 元素。
 
Ehcache 中的 Cache 代表一塊特定的緩存區域或是緩存系統。
 
Cache Element 元素可以存儲到 MemoryStore (內存)中,也可以寫到 DiskStore (磁盤)中。
 
Element
 
每一個 Element 對應一個緩存的原子實體。它有 key value 以及訪問記錄屬性。 Element 可以被 put Cache 也可以 remove Cache 。通過配置 Cache 可定制 Element 的失效以及移除策略。
 
Ehcache-1.2 API 中要求存儲對象要可序列化。沒有序列化的對象不可以存儲到 DiskStore (磁盤)中,也不能被拷貝。
 
Element 類中注意到有倆個方法 getOjbectValue getKeyValue ,這個方法都是從緩存中取得 Element 元素的方法,唯一區別就是一個是用來取得序列化對象,另外一個是不可序列化對象。

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