Java Web程序设计教程(第二版)(微课版)07 Hibernate框架基础_第1页
Java Web程序设计教程(第二版)(微课版)07 Hibernate框架基础_第2页
Java Web程序设计教程(第二版)(微课版)07 Hibernate框架基础_第3页
Java Web程序设计教程(第二版)(微课版)07 Hibernate框架基础_第4页
Java Web程序设计教程(第二版)(微课版)07 Hibernate框架基础_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章Hibernate框架基础本章概述本章学习目标主要内容JavaWeb程序设计教程(第二版)(微课版)

第七章Hibernate框架基础

第1页Hibernate是一种Java语言下的对象关系映射(ORM)解决方案。它是使用GNU宽通用公共许可证发行的自由、开源的软件。它为面向对象的领域模型到传统的关系型数据库的映射,提供了一个使用方便的持久化框架。Hibernate不仅负责从Java类到数据库表的映射(还包括从Java数据类型到SQL数据类型的映射),还提供了面向对象的数据查询检索机制,从而极大地缩短了手动处理SQL和JDBC上的开发时间。本章将从ORM讲起,详细介绍Hibernate框架的基本知识,包括Hibernate开发环境的搭建、Hibernate的工作原理,以及Hibernate中的检索策略与查询方式。通过本章的学习,读者应了解Hibernate的框架结构,掌握Hibernate的工作原理,学会配置Hibernate的配置文件和映射文件。JavaWeb程序设计教程(第二版)(微课版)

第七章Hibernate框架基础第2页本章概述JavaWeb程序设计教程(第二版)(微课版)

第七章Hibernate框架基础第3页本章学习目标掌握Hibernate开发环境的搭建理解Hibernate的框架结构和工作流程掌握Hibernate的配置文件掌握Hibernate映射文件的配置理解Hibernate的检索策略掌握Hibernate关联关系在映射文件中的配置了解Hibernate的查询方式JavaWeb程序设计教程(第二版)(微课版)

第4页主要内容7.1ORM简介

7.2一个简单的Hibernate应用 7.3认识HibernateORM 7.4Hibernate查询7.5本章小结 7.6思考和练习 第七章Hibernate框架基础

JavaWeb程序设计教程(第二版)(微课版)

第5页7.1ORM简介ORM是将表与表之间的操作映射为对象与对象之间的操作,从而实现通过操作实体类来操作表的目的。从数据库中获取的数据自动按设置的映射要求封装成特定的对象,然后通过对对象进行操作来修改数据库中表的数据,在这个过程中操作的数据信息就是一个对象。ORM有两种实现模式:第七章Hibernate框架基础

ORM活动记录数据映射器是采用硬编码方式实现持久化存在以下不足:1.持久化层缺乏弹性。2.增加软件的维护难度。为了解决这些不足,提出了ORM技术:1.简单2.传达性3.精确性应用ORM的意义JavaWeb程序设计教程(第二版)(微课版)

第6页第七章Hibernate框架基础

自从ORM概念提出之后,涌现出很多基于ORM的应用框架。其中,具有代表性的有Hibernate、iBATIS、JPOX、ApacheTorque、TopLink和JPA等。流行的ORM框架JavaWeb程序设计教程(第二版)(微课版)

第7页第七章Hibernate框架基础

JavaWeb程序设计教程(第二版)(微课版)

第8页主要内容7.1ORM简介 7.2一个简单的Hibernate应用

7.3认识HibernateORM 7.4Hibernate查询7.5本章小结 7.6思考和练习 第七章Hibernate框架基础

7.2一个简单的Hibernate应用JavaWeb程序设计教程(第二版)(微课版)

第9页Hibernate的官方网站为,在该网站上找到ORM项目,可以下载其最新版本或历史版本。下载页面的地址为/orm/downloads/。选择要下载的版本,单击相应的链接即可。下载得到一个zip压缩包,该包中不仅包括Hibernate应用开发所需的jar包,还包括了它的源代码以及相应的文档说明等,本书使用的是最新版本5.2.7第七章Hibernate框架基础

Hibernate的JAR包简介JavaWeb程序设计教程(第二版)(微课版)

第10页antlr-2.7.7.jar:Antlr(ANotherToolforLanguageRecognition)是一个工具,它为我们构造自己的识别器(recognizers)、编译器(compiler)和转换器(ranslators)提供了一个基础。classmate-1.3.0.jar:一个快速解析XML的工具包。dom4j-1.6.1.jar:dom4jXML解析器。geronimo-jta_1.1_spec-1.1.1.jar:ApacheGeronimo所带的Java事务处理接口。hibernate-commons-annotations-5.0.1.Final.jar:使用javax.persistence下的Annotation可以不依赖Hibernate的JAR包,这样的好处是可以切换到其他的ORM框架。hibernate-core-5.2.7.Final.jar:Hibernate核心jar包。hibernate-jpa-2.1-api-1.0.0.Final.jar:Hibernate对JPA(Java持久化API)规范的支持。jandex-2.0.3.Final.jar:用来索引Annotation的。javassist-3.20.0-GA.jar:一个编辑Java字节码的类库,使Java字节码操纵简单。jboss-logging-3.3.0.Final.jar:JBoss内置的日志管理功能。第七章Hibernate框架基础

JavaWeb程序设计教程(第二版)(微课版)

第12页

为了今后更多的项目都能快速引入Hibernate的依赖库,可以在Eclipse中新建一个UserLibrary,然后在项目中通过AddLibrary快速引入Hibernate开发必需的全部JAR包。新建UserLibrary第七章Hibernate框架基础

在项目中引入UserLibraryJavaWeb程序设计教程(第二版)(微课版)

第12页第七章Hibernate框架基础

JavaWeb程序设计教程(第二版)(微课版)

第13页使用Hibernate代替JDBC本节将使用Hibernate来替换第6章中通过JDBC实现的学生信息录入功能。在src目录新建Hibernate的配置文件hibernate.cfg.xml,该配置文件用于配置数据库连接和Hibernate运行时所需的各种属性,在Hibernate工作的初始阶段,这些信息被先后加载到Configuration和SessionFactory实例。第七章Hibernate框架基础

JavaWeb程序设计教程(第二版)(微课版)

第14页主要内容7.1ORM简介 7.2一个简单的Hibernate应用 7.3认识HibernateORM

7.4Hibernate查询7.5本章小结 7.6思考和练习 第七章Hibernate框架基础

JavaWeb程序设计教程(第二版)(微课版)

第15页7.3认识HibernateORMHibernate是一个将持久化类与数据库表进行映射的工具,它本身对JDBC进行了封装而且拥有多种事务处理方式,完整的Hibernate框架结构如图所示。第七章Hibernate框架基础

Session实例用来与数据库交互的常用方法:createQuery()beginTransaction()save()/persist()get()load()update()merge()delete()Hibernate的框架结构JavaWeb程序设计教程(第二版)(微课版)

第16页Hibernate配置文件详解Hibernate配置文件主要功能是配置数据库连接和Hibernate运行时所需的各种属性,配置文件应该位于JAVA应用或者JAVAWeb应用的类文件中。Hibernate配置文件的方式有两种:一种通过JAVA属性文件perties配置;一种是通过XML格式文件hibernate.cfg.xml配置。第七章Hibernate框架基础

perties配置Hibernate配置属性使用Hibernate映射文件JavaWeb程序设计教程(第二版)(微课版)

第17页Hibernate映射文件是标准的XML文件,文件的扩展名为.hbm.xml,其中包含了告诉Hibernate如何保存实体和如何从关系数据库中获取实体的指令。hibernate.cfg.xml中的<mapping>元素是关联映射文件的,通过属性resource来指定映射文件的路径和名称,例如:<mappingresource="domain.hbm.xml"></mapping>Hibernate映射文件的根元素是<hibernate-mapping>,<hibernate-mapping>元素中包含了一个或多个<class>元素,用于指定类名和对应的表之间的映射。第七章Hibernate框架基础

Hibernate的工作流程JavaWeb程序设计教程(第二版)(微课版)

第18页Hibernate的工作流程如图所示。第七章Hibernate框架基础

JavaWeb程序设计教程(第二版)(微课版)

第19页主要内容7.1ORM简介 7.2一个简单的Hibernate应用 7.3认识HibernateORM 7.4Hibernate查询7.5本章小结 7.6思考和练习 第七章Hibernate框架基础

JavaWeb程序设计教程(第二版)(微课版)

第20页7.4Hibernate查询

为了最大程度地提高查询性能,Hibernate提供了各种检索策略和检索方式。本节将学习Hibernate提供的各种检索策略、检索方式以及各种关联关系的使用。第七章Hibernate框架基础

Hibernate的检索策略JavaWeb程序设计教程(第二版)(微课版)

第21页

为了优化检索性能,针对不同的检索情况,应使用不同的检索策略。Hibernate框架提供了多种检索策略:立即检索:<class>元素和<set>元素的lazy属性设置为false延迟检索:lazy属性设置为true预先检索:<set>元素内添加fetch属性,并将其设置为join批量检索:<class>或<set>元素中添加<batch-size>属性第七章Hibernate框架基础

JavaWeb程序设计教程(第二版)(微课版)

第22页Hibernate的关联查询

关联关系是一种结构化关系,指两个对象之间存在某种联系。在Hibernate框架中,关系体系在持久化类对象之间存在。在关系数据库中,常见的数据表之间的关系包括:一对一关系:主键关联和外键关联一对多/多对一关系:一对多单向关联、多对一单向关联和双向关联多对多关系第七章Hibernate框架基础

Hibernate的查询方式JavaWeb程序设计教程(第二版)(微课版)

第23页Hibernate提供了面向对象的检索方式,只需通过正确的关联关系配置就可以轻松完成查询。Hibernate的三种查询方式:HQLCriteria原生SQL查询。第七章Hibernate框架基础

JavaWeb程序设计教程(第二版)(微课版)

第24页主要内容7.1ORM简介 7.2一个简单的Hibernate应用 7.3认识HibernateORM 7.4Hibernate查询7.5本章小结

7.6思考和练习 第七章Hibernate框架基础

本章小结JavaWeb程序设计教程(第二版)(微课版)

第25页本章介绍了Hibernate框架的基础知识。首先从ORM讲起,介绍了

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论