`
maoyi606
  • 浏览: 36076 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

Hibernate缓存配置

阅读更多
应用程序 -> Hibernate缓存 ->永久性数据存储源
Hibernate缓存介于Hibernate应用和数据库之间,缓存中存放了数据库数据的拷贝。 其作用是减少访问数据库的频率,从而提高应用的运行性能。

Hibernate提供了两级缓存:
         一级缓存: Session级别的缓存
         二级缓存: SessionFactory级别的全局缓存

二级缓存的配置:启用二级缓存:在Hibernate的配置文件中配置属性
hibernate.cache.use_second_level_cache = true
在映射文件中设置二级缓存×××.hbm.xml :
类或者集合映射的“<cache>元素”的详细用法:
<hibernate-mapping>
<class name="com.Dept"  table=“T_DEPT"  >
<cache
      usage="transactional|read-write|nonstrict-read-write|read-only" 
      region="RegionName"
      include="all|non-lazy" />

<set name=“users”  lazy=“true”>
          <cache usage=“ nonstrict-read-write” />
          ……
     </set>
</class>
</hibernate-mapping>
usage:(必须)说明了缓存的同步策略: transactional、 read-write、 nonstrict-read-write或 read-only。
region  :(可选, 默认为类或者集合的名字) 指定二级缓存的区域名
include :(可选,默认为 all)如果取值为non-lazy,表示当缓存一个对象时,不会缓存它的映射为延迟加载的属性。
注意:
1、<cache>元素必须紧跟<class>元素
2、 Hibernate只会缓存对象的简单属性的值, 如果要缓存集合属性,必须在集合元素中也加入<cache>子元素,而Hibernate仅仅是把与当前持久对象关联的对象的ID存放到缓存中。如果希望把整个关联的对象的所有数据都存入缓存,则要在相应关联的对象的映射文件中配置<cache>元素。

选择合适的缓存插件: 在配置文件指定CacheProvider
<property name=”hibernate.cache.provider_class”>        org.hibernate.cache.EhCacheProvider </property>



分享到:
| 422
评论

相关推荐

    Hibernate缓存深入详解 from ITEye

    Hibernate缓存可以针对实体类、集合类、SQL查询结果等设置不同的缓存区域。根据业务需求,可以自定义缓存策略,为不同类型的对象设置不同的缓存过期时间。 **六、缓存同步** 为了保证多线程环境下的数据一致性,...

    Hibernate缓存技术研究

    - **优化缓存配置**:例如设置合理的缓存过期时间、最大容量等参数,避免缓存占用过多内存。 - **监控缓存命中率**:定期检查缓存的命中率,调整缓存策略和配置,以达到最佳性能。 总之,Hibernate的缓存机制是提高...

    Hibernate二级缓存配置与分析

    学习hibernate的必备,提供一个简易的流程图,方便记忆和查找

    Hibernate缓存,性能优化

    - **二级缓存配置**:根据业务需求选择合适的缓存策略和过期机制,合理设置缓存区域,避免不必要的数据冗余和竞争,同时考虑数据一致性问题,确保缓存的有效性。 #### 优化查询和SQL语句 - **减少N+1查询问题**:...

    hibernate缓存机制

    Hibernate缓存机制是提高应用程序性能的关键技术之一,它通过存储数据副本减少对物理数据库的访问。缓存可以分为两层:第一级缓存和第二级缓存。 **第一级缓存**是内置在Session中的,它是不可卸载的,也称为...

    Hibernate缓存深入详解

    缓存配置和管理** 为了充分利用缓存,开发者需要根据实际需求进行适当的配置。例如,设置缓存的大小、过期策略、同步模式等。同时,需要注意缓存可能导致的数据一致性问题,尤其是在高并发环境中,合理地使用锁和...

    Spring集成的Hibernate配置二级缓存

    在企业级Java应用开发中,Spring和Hibernate是两个非常重要的框架。Spring作为一个全面的轻量级容器,负责管理对象的生命周期和依赖...通过优化缓存配置和策略,可以在不牺牲数据一致性的情况下,达到良好的用户体验。

    Hibernate缓存详解

    缓存配置 在Hibernate配置文件(hibernate.cfg.xml)中,可以设置二级缓存的相关参数,如开启二级缓存、指定缓存提供者、配置缓存区域等。例如: ```xml &lt;property name="hibernate.cache.use_second_level_cache...

    hibernate缓存

    #### 四、缓存配置与实现 为了实现Hibernate的缓存功能,需要进行以下步骤的配置: 1. **引入缓存组件**:例如使用EhCache作为二级缓存的实现,需要添加对应的jar包(如`ehcache.jar`)。 2. **配置缓存参数**:在...

    hibernate缓存和事务

    Hibernate 是一个流行的对象关系映射(ORM)框架,它允许Java...通过理解Hibernate缓存和事务管理,以及如何有效地执行查询,开发者可以创建高效、健壮的Java应用程序,降低与数据库交互的复杂性,同时提升系统性能。

    Hibernate缓存与spring事务详解

    **标题:“Hibernate缓存与Spring事务详解”** 在IT领域,尤其是Java开发中,Hibernate作为一款流行的ORM(对象关系映射)框架,极大地简化了数据库操作。而Spring框架则以其全面的功能,包括依赖注入、AOP(面向切...

    hibernate缓存策略

    #### 二、Hibernate缓存配置 ##### 2.1 概述 Hibernate的缓存机制分为两个层次:**一级缓存**和**二级缓存**。一级缓存是由Hibernate框架自动管理和维护的,它存在于每个Session的生命周期内;而二级缓存则需要...

    hibernate缓存ehcache用法

    这篇博客文章“hibernate缓存ehcache用法”可能详细介绍了如何在Hibernate中配置和使用Ehcache。 首先,我们需要理解什么是缓存。缓存是一种存储技术,用于临时保存经常访问的数据,以减少对主存储器(如数据库)的...

    hibernate一级和二级缓存配置与详解

    但是,可以通过设置`hibernate.cache.use_query_cache`来禁用查询缓存,防止对一级缓存造成影响。 ### 二级缓存 二级缓存是SessionFactory级别的,可以跨Session共享。相比一级缓存,二级缓存可以持久化存储,即使...

    Hibernate教程25_Hibernate缓存

    7. **示例代码**:通过提供的源码,我们可以学习如何在实际项目中配置和使用Hibernate缓存,包括创建缓存配置、声明缓存区域、启用查询缓存等。 总的来说,这个教程应该涵盖了Hibernate缓存的基础知识,包括一级...

    为Spring集成的Hibernate配置二级缓存

    在Java企业级开发中,Spring和Hibernate是两个非常...3. **配置Spring**:在Spring的配置文件(如`applicationContext.xml`)中,配置Hibernate SessionFactory,并注入二级缓存配置。以下是一个配置示例: ```xml ...

Global site tag (gtag.js) - Google Analytics