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

Hibernate工作原机制

阅读更多
原理:
1.读取并解析配置文件
2.读取并解析映射信息,创建SessionFactory
3.打开Sesssion
4.创建事务Transation
5.持久化操作
6.提交事务
7.关闭Session
8.关闭SesstionFactory

为什么要用:
1. 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。

2. Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现。他很大程度的简化DAO层的编码工作

3. hibernate使用Java反射机制,而不是字节码增强程序来实现透明性。

4. hibernate的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。它支持各种关系数据库,从一对一到多对多的各种复杂关系。

2. Hibernate是如何延迟加载?
1. Hibernate2延迟加载实现:a)实体对象 b)集合(Collection)

2. Hibernate3 提供了属性的延迟加载功能

当Hibernate在查询数据的时候,数据并没有存在与内存中,当程序真正对数据的操作时,对象才存在与内存中,就实现了延迟加载,他节省了服务器的内存开销,从而提高了服务器的性能。

3.Hibernate中怎样实现类之间的关系?(如:一对多、多对多的关系)

类与类之间的关系主要体现在表与表之间的关系进行操作,它们都市对对象进行操作,我们程序中把所有的表与类都映射在一起,它们通过配置文件中的many-to-one、one-to-many、many-to-many、

4. 说下Hibernate的缓存机制

1. 内部缓存存在Hibernate中又叫一级缓存,属于应用事物级缓存

2. 二级缓存:
a) 应用及缓存
b) 分布式缓存
条件:数据不会被第三方修改、数据大小在可接受范围、数据更新频率低、同一数据被系统频繁使用、非 关键数据
c) 第三方缓存的实现

5. Hibernate的查询方式
Sql、Criteria,object comptosition
Hql:
1、 属性查询
2、 参数查询、命名参数查询
3、 关联查询
4、 分页查询
5、 统计函数

6. 如何优化Hibernate?
1.使用双向一对多关联,不使用单向一对多
2.灵活使用单向一对多关联
3.不用一对一,用多对一取代
4.配置对象缓存,不使用集合缓存
5.一对多集合使用Bag,多对多集合使用Set
6. 继承类使用显式多态
7. 表字段要少,表关联不要怕多,有二级缓存撑腰
分享到:
评论

相关推荐

    hibernate 重点知识原创

    Session 是 Hibernate 中的工作单元,它提供了一种在内存中管理对象的机制,这就是一级缓存。当对象被加载到 Session 后,它们的状态会被缓存起来,直到 Session 被关闭。此外,Hibernate 还提供了二级缓存,它是一...

    [Hibernate雨夜的寂寞原创教程].Hibernate

    7. **缓存机制**:Hibernate内置了第一级缓存(Session缓存)和第二级缓存,提高数据访问速度。通过合理的缓存策略,可以有效地提高应用性能。 8. **实体关系映射**:包括一对一、一对多、多对一、多对多四种关系。...

    hibernate实战 英文版

    4. **缓存机制**:为了提高性能,Hibernate支持多种缓存策略,书中详细介绍了如何合理地使用这些缓存选项。 5. **查询语言**:Hibernate提供了强大的查询语言HQL(Hibernate Query Language),用于执行复杂的数据库...

    hibernate3 hibernate3

    4. Session:它是Hibernate的主要工作单元,用于在应用程序和数据库之间建立会话。Session提供了一种透明的方式来保存和检索对象,同时也负责事务管理。 5. Querying:Hibernate提供了HQL(Hibernate Query ...

    hibernate第一个hibernate

    Hibernate提供了缓存机制,如一级缓存(Session级别的)和二级缓存(SessionFactory级别的),以提高性能。另外,合理的配置和使用批处理、延迟加载等特性也能有效提升应用性能。 10. 扩展与进阶: Hibernate支持...

    hibernate映射心得 原创

    “源码”标签表明文章可能会涉及Hibernate框架的内部工作原理,可能包括如何阅读和理解Hibernate的源代码,以便更好地定制和优化ORM过程。“工具”标签则暗示Hibernate作为一个开发工具,如何与其他开发工具(如IDE...

    hibernate-release-4.2.21.Final官方原版

    10. **事件和监听器**:Hibernate支持事件监听机制,允许开发者在特定操作(如插入、更新、删除)前后执行自定义代码,以实现额外的功能或业务逻辑。 综上,"hibernate-release-4.2.21.Final"是Hibernate 4系列的一...

    hibernATE的源代码

    通过阅读这些测试用例,可以了解Hibernate如何使用,以及其内部的工作机制。 3. **pom.xml**: Maven构建文件,定义了项目依赖、构建目标和插件配置。通过分析`pom.xml`,我们可以看到Hibernate依赖的其他库,以及...

    马士兵hibernate学习笔记(原版)

    7. **性能优化**:Hibernate的性能优化主要包括缓存机制(第一级缓存、第二级缓存)、批处理、延迟加载等策略,通过合理设置和使用,可以显著提高应用程序的运行效率。 8. **Annotation与XML配置**:Hibernate支持...

    Ext+Spring+Hibernate(原创送给javaeye朋友)

    ExtJS 是一个基于JavaScript的富互联网应用程序(RIA)框架,它提供了丰富的组件库和强大的数据绑定机制,用于构建功能复杂的Web应用前端。在项目中,可能展示了如何使用ExtJS创建交互式的用户界面,例如表格、表单...

    Hibernate中文文档+hibernate annotation +distribution

    《Hibernate技术深度解析:中文文档与实战指南》 在Java世界中,Hibernate作为一个强大的对象关系映射(ORM...在阅读文档和使用示例的过程中,不断探索和理解Hibernate的内在机制,将有助于提升Java开发者的技能水平。

    Hibernate源码

    - **缓存机制**:掌握一级缓存(Session级别的内存缓存)和二级缓存(SessionFactory级别的分布式缓存)的工作原理。 - **事务管理**:理解Hibernate如何处理JTA和JDBC事务,以及如何配置事务隔离级别。 - **懒加载...

    hibernate中文参考文档

    2. 体系结构:Hibernate的体系结构通常包括了核心和可选组件,比如会话(Session)和会话工厂(SessionFactory)、事务管理、缓存机制、以及查询接口等。文档会详细解释这些组件的职责和它们是如何协同工作来实现...

    Hibernate官方中文参考手册+Hibernate开发指南+Hibernate的两本英文书籍

    理解ORM的概念,熟悉Java Persistence API(JPA),掌握HQL和Criteria API的使用,以及了解Hibernate的事务管理和缓存机制,都是成为Hibernate专家的关键步骤。 总之,这四本书籍构成了一个全面的学习路径,从基础...

    hibernate4.3.11所需jar包

    7. **缓存**: Hibernate提供了二级缓存机制,可以通过插件如Ehcache或Infinispan来实现,提高数据访问速度。 8. **事件和监听器**: Hibernate允许开发者注册监听器,对对象生命周期的各个阶段(如加载、保存、更新...

    hibernate项目源代码

    7. **缓存机制**:Hibernate支持一级缓存(Session级别的缓存)和二级缓存(SessionFactory级别的缓存),可以显著提升性能。学习者应理解缓存的工作原理和配置方法。 8. **事务管理**:在Hibernate中,事务处理是...

    hibernate5.2.7-src源码

    1. Session接口与SessionFactory:Session是Hibernate的主要工作接口,用于与数据库交互,SessionFactory则是Session的工厂,负责创建Session实例。 2. 对象状态管理:Hibernate通过EntityState管理实体对象的状态...

    hibernate_third项目源码

    Hibernate是一款强大的Java持久化框架,它简化了数据库操作,将对象与关系数据库之间的映射(ORM)工作自动化。在这个项目中,我们将探讨以下几个核心知识点: 1. **Hibernate配置**:首先,你需要了解Hibernate的...

    hibernate-extensions-2.1.3.zip ,middlegen for hibernate

    - 邮件服务:集成邮件发送功能,实现业务流程中的通知机制。 2. Middlegen: Middlegen是针对Hibernate的一个元数据生成工具,它能根据现有的数据库模式生成对应的Hibernate映射文件(.hbm.xml)和Java实体类。...

Global site tag (gtag.js) - Google Analytics