`
esffor
  • 浏览: 1370835 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Hibernate缓存讨论与研究(3)

阅读更多
3:Hibernate缓存运用与管理

本小节,我们来看看Hibernate的缓存管理,除了我们通常分的两类缓存外,笔者再介绍“查询缓存”,它依赖于二级缓存。
内部缓存:前面我们提到内部缓存是属于事物级缓存,在正常的情况下是由Hibernate自动维护的。当然在特殊的情况下需要我们进行手动维护,Hibernate就提供了以下几种方法供开发者选择:

(1)Session.evict(XXX)
将某个特定的对象从内部缓存中清除,上述的XXX 为对象的实例名。使用此方法有两种适用情形,一是在特定的操作(如批量处理),需要及时释放对象占用的内存维持系统的稳定性,笔者的关于批处理的文章中就运用了此方法,有兴趣的朋友可关注IT168“国庆加油站”技术栏目。二是不希望当前Session继续运用此对象的状态变化来同步更新数据库。 (2)Session.clear()
清除缓存中的所有持久化对象。
二级缓存:在第2节的论述中我们知道,二级缓存涵盖了应用范围与集群范围。这里问题就来了,我们什么情况下要使用二级缓存?如果满足以下条件,则可以将其纳入二级缓存:(1)数据不会被第三放修改

(2)同一数据系统经常引用
(3)数据大小在可接受范围之内
(4)非关键数据,或不会被并发的数据

Hibernate本身并不提供二级缓存的产品化实现,而是为众多支持Hibernate的第三方缓存组件提供整和接口。笔者这里仅仅介绍现在主流的EHCache,它更具备良好的调度性能。
首先,Hibernate启用二级缓存,需要的在主配置文件hibernate.cfg.xml中配置以下参数(以EHCache为例子,使用Hibernate3

<hibernate-configuration>
<session-factory>
…………
<property name="”hibernate.cache.provider_class”">
org.ehcache.hibernate.Provider
</property>
…………
</session-factory>
</hibernate-configuration>
分享到:
评论

相关推荐

    hibernate技术研究对比总结

    讨论了缓存机制(一级缓存和二级缓存)、批处理、延迟加载和实体状态管理等性能优化策略。 ### 8. 对比其他ORM框架 对比 Hibernate 与其他 ORM 框架,如 MyBatis、EclipseLink 和 JDO,在易用性、灵活性、性能和...

    hibernate-3.2源码包

    下面将详细讨论 Hibernate 3.2 源码中的关键知识点: 1. **对象关系映射(ORM)**:Hibernate 提供了一种机制,将Java类映射到数据库表,使得开发者可以使用面向对象的方式来操作数据库,而无需编写大量SQL语句。 ...

    hibernate源码

    文件`hibernate_fetch_1`与`hibernate_query_cache`涉及到的是Hibernate的数据检索和查询缓存。Hibernate提供了多种加载策略,包括立即加载(Eager Fetching)和延迟加载(Lazy Loading)。立即加载会一次性获取...

    Pro Hibernate 3 2005

    7. **缓存机制**:解释了Hibernate缓存的实现原理及配置方法,帮助提高应用程序性能。 8. **性能调优**:提供了关于如何优化Hibernate应用性能的一系列建议,包括查询优化、连接池配置等。 9. **集成测试**:介绍了...

    Hibernate 事务和并发控制

    在Java的持久化框架中,Hibernate是一个非常重要的角色,它提供了强大的对象关系映射(ORM)功能,使得开发者能够方便地在Java应用中操作...深入研究Hibernate的文档和实践案例,将有助于进一步提高我们的开发技能。

    Hibernate Reference

    ### Hibernate 3.2.2 参考文档精要解析 #### 引言与初次接触Hibernate Hibernate作为一款流行的Java...通过深入研究这份文档,开发者可以更加熟练地掌握Hibernate的使用技巧,从而在项目中发挥出更高的效率和质量。

    spring-orm-hibernate4源码

    本文将围绕Spring如何管理和驱动Hibernate4进行详细的讨论。 首先,Spring作为一个灵活的IoC(Inversion of Control)容器,它不仅管理着应用对象的生命周期,还负责整合各种ORM框架,包括Hibernate。Spring的ORM...

    论坛系统 hibernate jsp hibernate 毕业论文项目

    【描述】:这个项目是一个基于Java技术栈的论坛系统实现,主要利用了Hibernate ORM框架与JSP(JavaServer Pages)进行开发,是适合学生作为毕业论文项目的实例。它展示了如何将数据库操作与Web界面相结合,为用户...

    Hibernate实战(第2版).pdf

    6. **缓存机制**:分析Hibernate的缓存策略,包括一级缓存和二级缓存,以及如何利用缓存提高性能。 7. **性能优化**:提供优化Hibernate应用的技巧,如延迟加载、批处理更新、预加载等策略,以及如何通过SQL优化来...

    hibernate 电子书全集

    4. **案例研究**:通过实际项目案例,展示Hibernate在不同场景下的应用。 这些电子书全集将帮助开发者从多个角度全面掌握Hibernate,无论你是初学者还是经验丰富的开发者,都能从中受益匪浅。通过深入阅读和实践,...

    Hibernate实战(第2版) 高清扫描版

    8. **第二级缓存和查询缓存**:讨论Hibernate的缓存机制,如何使用第二级缓存提高性能,以及查询缓存如何减少数据库查询次数。 9. **性能优化**:提供一系列优化策略,如延迟加载、批处理、连接池配置等,帮助...

    hibernate4全注解例子

    8. **性能优化**:学习如何通过缓存机制(一级缓存和二级缓存)、批处理和延迟加载等技术提升Hibernate的性能。 **标签:“源码”和“工具”** 这表明文章可能包含了示例代码,并且可能会讨论如何将这些知识应用于...

    深入浅出Hibernate.pdf

    3. 实体类与数据表映射:介绍Hibernate的核心元素——实体类(Entity)和持久化类,以及如何通过注解或XML文件定义实体类与数据库表的映射关系,如@Entity、@Table、@Column等注解的使用。 4. Session与Transaction...

    基于Hibernate的效率查询的研究和应用.pdf

    ### 基于Hibernate的效率查询的研究和应用 #### 摘要 本文详细探讨了当前流行的Hibernate映射框架,并结合某通信企业的电子运行维护系统(E2OMS)的实际开发过程,提出了一个基于Hibernate的数据持久层解决方案。该...

    Java Persistence with Hibernate

    6. **缓存机制**:介绍Hibernate的一级缓存和二级缓存,以及如何配置和优化缓存以提高应用程序性能。 7. **性能优化**:讨论最佳实践,如延迟加载、批处理更新、连接池的使用,以及如何通过分析和调整来优化数据库...

    hibernate入门框架源码

    描述中提到,这个实例使用了MySQL数据库,这意味着我们将讨论如何配置Hibernate以与MySQL配合工作,并执行CRUD(创建、读取、更新和删除)操作。同时,源代码有详细的注释,这意味着初学者可以通过阅读代码和注释来...

    Lucene Hibernate

    标题“Lucene Hibernate”揭示了我们讨论的核心主题:如何将Apache Lucene这个强大的全文搜索引擎与Hibernate这款流行的Java对象关系映射(ORM)框架相结合。在这个例子中,我们将深入探讨这两个技术的集成,以及...

    一个好的hibernate源代码有server2008数据库

    我们可以深入讨论Hibernate的相关概念、功能、优点以及如何与SQL Server 2008集成。 **文件名分析:** 文件名为“SSHDemo.rar”和“新建文件夹.rar”。"SSHDemo"可能是一个SSH(Spring、Struts、Hibernate)架构的...

    Hibernate开发指南

    7. **缓存机制**:介绍Hibernate的缓存层次,包括一级缓存(Session缓存)和二级缓存(SessionFactory缓存),以及第三方缓存插件如EhCache的集成。 8. **事务管理**:学习如何在Hibernate中处理事务,包括编程式...

    达内hibernate自创API

    达内教育作为国内知名的IT培训机构,也对此进行了深入的研究,并分享了其自创的Hibernate API设计与实现。本文将围绕“达内Hibernate自创API”这一主题,详细阐述其核心思想和关键特性。 一、理解Hibernate基础 在...

Global site tag (gtag.js) - Google Analytics