首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Hibernate 3 二級緩存基礎配置與使用詳解

     編輯:Java 相關知識

二級緩存核心特性

  • 僅緩存實體對象,不緩存屬性級查詢
  • 生命周期與 SessionFactory 一致,由其管理
  • 屬 SessionFactory 級別,所有 Session 共享
  • 適合存放不常變化的實體對象(如字典表、配置數據)

配置步驟

1. 引入依賴

必須導入 ehcache.jar,並將 Hibernate 3.2 etc 目錄下的 ehcache.xml 複製至項目 src 目錄。Ehcache 為第三方緩存產品,Hibernate 僅做集成;不支持分布式,若有集群需求請換用支持分布式的緩存實現(如 Redis、Memcached)。

2. 啟用二級緩存

在 hibernate.cfg.xml 中配置:

<property name="hibernate.cache.use_second_level_cache">true</property>
<property name="hibernate.cache.provider_class">
    org.hibernate.cache.EhCacheProvider
</property>

3. 指定實體使用二級緩存

兩種方式擇一:

  • 映射文件:在 .hbm.xml 中添加 <cache usage="read-only"/>
  • 配置文件:在 hibernate.cfg.xml 中聲明:
<class-cache class="com.zzz.hibernate.ClassT" usage="read-only"/>

read-only 為常用策略,其他策略(read-write、nonstrict-read-write、transactional)請參閱 Hibernate 3 開發手冊。

CacheMode 進階

CacheMode 控制一級緩存與二級緩存的交互行為(如 GET、PUT、REFRESH、IGNORE),詳細用法可在開發手冊中搜索該關鍵字。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved