Hibrnate培训教程

2019-04-22 14:14

Hibernate培训教程

hibernate简史................................................................................................................... 3

标准方面................................................................................................................... 3 ORM(object relational mapping)................................................................................... 3 成功之道................................................................................................................... 3 何为hibernate............................................................................................................ 4 持久层设计 ...................................................................................................................... 4

持久层概念 ............................................................................................................... 4

ORM(object relational mapper)对象-关系型数据映射组件............................................. 4 设计模式................................................................................................................... 5 资源管理模式............................................................................................................ 5 解藕合设计 ............................................................................................................... 6 体系结构.......................................................................................................................... 6

概况.......................................................................................................................... 6 实例状态................................................................................................................... 8 O/R映射 .......................................................................................................................... 9

basic o/r mapping........................................................................................................ 9 集合类映射 ............................................................................................................. 10 关联关系映射.......................................................................................................... 10 组件映射................................................................................................................. 10 继承映射................................................................................................................. 10 核心接口........................................................................................................................ 10 分类........................................................................................................................ 10 详解.........................................................................................................................11 数据检索........................................................................................................................ 13

Hibernate Query Language (HQL) .............................................................................. 13 Criteria queries (QBC)............................................................................................... 13 Native SQL queries ................................................................................................... 13 开发............................................................................................................................... 13

基本配置................................................................................................................. 14 高级配置................................................................................................................. 15 hibernate最佳实践.......................................................................................................... 15 参考............................................................................................................................... 15

hibernate简史

hibernate是在JDBC之上提供一层薄薄的封装,在提供完全透明的持久化机制的同时又提供尽可能多的灵活性。相比之ibatis则是面向“语句映射”的层面,使用SQL作为查询语言。

标准方面

J2EE提供了两个持久化的手段:JDBC,它是J2SE中访问关系数据库系统的标准API,然而却以一种错误的编程模型来强制开发者用java代码来处理关系思想;另一个是实体Beans ,它是EJB中专门模型化持久化实体的组件,一是不能处理持久对象间的关系,二是使用了糟糕的查询语言,三是难于测试。

ORM(object relational mapping)

由于J2EE持久化标准对于处理对象与关系的尴尬,而且持久化问题的解决方案是由关系-对象映射(ORM)来解决的,它可以透明地持久化普通java对象(POJO)。因此,ORM框架悠然而生。

1990年,一些商业的ORM工具就出现了,比如TopLink。但由于其价格昂贵、结构复杂并且与Sun的实体bean标准相左,所以很少人会用。

2001年,JDO(java data object)在Java Community Progress(www.jcp.org)的规范中出现。因其试图建立一个完整的持久层框架,追求标准化陷入僵局;标准很不完善,存在重大缺陷,产品分裂, 也没有一个好的开源免费实现,也没有能够流行。

2001年末,hibernate第一个正式版本对外发布,赢得了开源社区的一片赞誉。 2003年6月8日,hibernate 2的发布,奠定了成功的基石。开始进入国内开发人员视野。

2003年末,hibernate获得了Jolt 2004大奖以及被jboss收购,确立了hibernate在java orm架构中的主导地位,ORM工业标准。

2005年3月,hibernate 3正式发布。

成功之道

? ? ? ? ?

快速发布,即时响应 全面的回归测式 追求卓越 避免过度设计 集权

? ? ? ? ?

文档 避免标准化

10分钟之内把Hibernate跑起来 开发人员的责任感

易用的、可更新的wiki网页

何为hibernate

创建一份XML“映射文档”,告诉Hibernate您希望能够保存在数据库中的类,以及它们如何关联到该数据库中的表和列,然后就可以要求它以对象的形式获取数据,或者把对象保存为数据。运行时,Hibernate读取映射文档,然后动态构建Java类,以便管理数据库与Java之间的转换。在Hibernate中有一个简单而直观的API,用于对数据库所表示的对象执行查询。要修改这些对象,(一般情况下)只需在程序中与它们进行交互,然后告诉Hibernate保存修改即可。类似地,创建新对象也很简单;只需以常规方式创建它们,然后告诉Hibernate有关它们的信息,这样就能在数据库中保存它们。

持久层设计

持久层概念

专注于实现持久化的一个相对独立的领域,可以通过一个简单的逻辑图表达。

ORM(object relational mapper)对象-关系型数据映射组件

优点:

? ? ? ?

减少乏味的代码 更加面向对象的设计 更好的性能 更好的移植性

缺点: ? ? ? ? ?

粒度问题granularity 子类型问题subtypes 同一性问题identity 关联问题associations 对象导航问题navigation

设计模式

? ? ? ?

工厂模式factory 代理模式proxy decorator模式 dynamic proxy模式

资源管理模式

A. DAO(data access object)模式

I.DAO模式的实现层次:


Hibrnate培训教程.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:word单项操作题目操作步骤图解说明(全)(2010版本新)资料

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: