`

Hibernate入门BLOG[十四、Hibernate的懒加载和缓存机制]

 
阅读更多

Hibernate的缓存机制

在创建数据库连接并且建立通信的过程消耗的资源和过程是比较复杂而且多的。因此Hibernate建立了相关的缓存机制。

Hibernate缓存分为2级:session级别和第三方缓存插件

二级缓存:

交给了第三方的缓存框架。

Oscatch

1、配置

<!--设置hibernate2级缓存。默认情况下为false-->

<propertyname="hibernate.cache.use_second_level_cache">false</property>

<propertyname="cache.provider_class">org.hibernate.cache.OSCacheProvider</property>

<!--指定需要缓存的对象-->

<class-cacheusage="read-write"class="cn.hibernate.model.User"/>

指定缓存对象:也可以再hbm.xml里面配置

<cacheusage="read-write"/>

</hibernate-mapping>

2、加入osCache配置的properties文件。这个文件在hibernate的下载文件中有相关的参考


同样也是加入classPath下面

读取顺序为:

一级缓存---二级缓存----数据库

Clear方法会清楚1级缓存

统计信息:

hibernate.generate_statistics

<!--统计信息的配置-->

<propertyname="generate_statistics">true</property>

实用统计信息:

Statisticsss=((Session)s).getSessionFactory().getStatistics();

//2级缓存的统计情况

System.out.println(ss.getSecondLevelCacheHitCount());


分享到:
评论

相关推荐

    初学hibernate,hibernate入门

    **初学Hibernate,Hibernate入门** ...随着对Hibernate的深入学习,你会发现它还支持更高级的功能,如级联操作、多对一、一对多等复杂关系映射、缓存机制、延迟加载等,这些都将极大地提升你的开发效率。

    hibernate入门小例子

    【hibernate入门小例子】是一个适合初学者的教程,主要涵盖了如何在JavaWeb项目中使用Hibernate框架与MySQL数据库进行集成。在这个例子中,我们将会深入理解Hibernate的核心概念,包括实体映射、对象关系映射(ORM)...

    hibernate入门--第一个实例

    8. **缓存机制** - Hibernate提供了第一级缓存(Session缓存)和第二级缓存(可选),以提高性能并减少对数据库的访问。 在学习这个实例的过程中,你需要理解每个步骤的目的和作用,同时熟悉Hibernate的主要API。...

    Hibernate入门到精通.pdf

    除此之外,Hibernate还支持缓存机制,如一级缓存(Session级别的缓存)和二级缓存(SessionFactory级别的缓存),能够提高数据访问速度,减少数据库压力。同时,Hibernate还提供了懒加载(Lazy Loading)功能,以...

    hibernate官方入门教程 (转载)

    10. **缓存机制**: Hibernate提供了一级缓存(Session级别)和二级缓存(SessionFactory级别),提高数据访问效率。 11. **实体状态管理**: Hibernate管理实体的瞬时态、持久态、游离态三种状态,理解这些状态有助...

    hibernate入门简单实例

    13. **懒加载(Lazy Loading)**:Hibernate支持懒加载机制,即关联的对象在需要时才从数据库加载,这通过`@OneToMany`, `@ManyToOne`, `@OneToOne`等注解的`fetch = FetchType.LAZY`实现。 14. **缓存(Caching)*...

    hibernate入门

    1. **缓存**:Hibernate提供了一级缓存(Session级别的缓存)和二级缓存(SessionFactory级别的缓存),可以提高数据访问速度。 2. **延迟加载(Lazy Loading)**:只在需要时加载关联对象,减少不必要的数据库交互...

    hibernate系列(一)hibernate入门

    **hibernate系列(一)hibernate入门** 在Java世界中,ORM(Object-Relational ...随着深入学习,你会发现Hibernate提供了很多高级特性,如二级缓存、懒加载、事件监听等,这些都是提高应用性能和灵活性的重要工具。

    java基础入门之Hibernate 入门

    在这个“Java基础入门之Hibernate入门”中,我们将深入理解Hibernate的核心概念,包括实体、配置、会话和查询等,以帮助初学者快速上手。 ### 一、Hibernate简介 1. **ORM概念**:对象关系映射(Object-Relational...

    02_传智播客hibernate教程_hibernate入门案例的细节分析

    11. **缓存机制**:理解Hibernate的第一级缓存(Session级别)和第二级缓存(SessionFactory级别),以及如何配置和使用第三方缓存。 12. **性能优化**:如批处理、延迟加载、懒加载、缓存策略等提高Hibernate应用...

    hibernate入门框架源码

    9. **懒加载和立即加载**:Hibernate支持对象的懒加载和立即加载策略,懒加载只在真正需要时加载关联的对象,而立即加载会在获取主对象时一起加载关联对象。 10. **联合主键**:对于拥有多个字段作为主键的情况,...

    hibernate教程,hibernate入门

    8. **缓存机制**:提供一级缓存(Session 缓存)和二级缓存(SessionFactory 缓存),提高性能。 **五、实战演练** 1. 创建简单的实体类并定义映射。 2. 配置 Hibernate 并初始化 SessionFactory。 3. 使用 Session...

    hibernate入门小程序

    **hibernate入门小程序** Hibernate 是一款开源的对象关系映射(ORM)框架,它为Java开发者提供了方便的数据持久化服务,使得开发人员可以使用面向对象的方式来操作数据库,而无需过多地关注SQL语句的编写。在...

    hibernate入门学习笔记+源码

    **hibernate入门学习笔记+源码** **一、Hibernate简介** Hibernate是一个开源的对象关系映射(ORM)框架,它简化了Java应用与数据库之间的交互。通过提供对象化的数据访问方式,Hibernate消除了传统JDBC代码中的...

    Hibernate入门的培训资料

    **Hibernate入门培训资料** 在Java世界中,Hibernate是一款非常重要的对象关系映射(ORM)框架,它极大地简化了数据库操作,让开发者可以使用面向对象的方式来处理数据。本篇内容将围绕“Hibernate入门”这一主题,...

    Hibernate学习笔记和资料

    hibernate概述,hibernate入门Demo,hibernate配置文件详解(全局配置,实体类映射配置),配置实体规则,核心API详解(Configuration,sessionFactory,session,Transaction),hibernate中的对象状态以及刷新能缓存机制 ...

    hibernate经典教材从入门到精通(共四篇)

    第三篇可能涉及到Hibernate的缓存机制,包括一级缓存和二级缓存,以及如何配置和使用第三方缓存服务,如 EhCache 或 Infinispan。此外,事务管理和并发控制也是重要的内容,如乐观锁和悲观锁的概念及其在Hibernate中...

    Hibernate入门.rar

    9. **缓存机制**:Hibernate提供了一级缓存(Session级别的)和二级缓存(SessionFactory级别的),理解它们的工作原理和使用方法。 10. **性能优化**:学习如何通过批处理、延迟加载、预加载等策略来提升Hibernate...

    hibernate入门与概述

    【hibernate入门与概述】 Hibernate 是一个流行的Java对象关系映射(ORM)框架,它允许开发者使用面向对象的方式操作数据库,将Java类与数据库表进行映射,从而简化数据库操作。本文主要涵盖以下几个核心概念: 1....

    hibernate入门需要的包

    10. **缓存机制**:Hibernate支持一级缓存(Session级别)和二级缓存(SessionFactory级别)。理解缓存原理和使用,能提高应用性能。 11. **一对多、多对一、多对多关系映射**:学习如何在实体类之间建立这些关系,...

Global site tag (gtag.js) - Google Analytics