- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一讲Hibernate
Hibernate ORM 最佳实践 课程目标 掌握使用Hibernate进行对象关系映射及持久化操作(对象保存、更新、删除、查询) 运用Hibernate的一些对象关系映射和数据检索的高级特性进行持久化操作 学会使用与Hibernate性能相关的缓存设置(二级缓存和查询缓存)及扩展机制(事件和拦截机制) 编写项目框架整合应用Struts+Hibernate 主要内容 介绍应用程序分层体系结构 ORM技术背景(数据库操作、持久化、JDBC比较及ORM工具) Hibernate的环境配置及入门程序编写 回顾应用程序分层结构 回顾应用程序分层结构 分层结构特点 1.松偶合 2.伸缩性 3.重用性 4.扩展性 ORM技术背景 ORM技术内容 提供对持久化对象增、删、改、查等接口 提供面向持久化对象(属性)的查询语言 提供方便定义ORM映射方式 提供事务支持,使持久化对象与DB中数据的一致 Java数据库操作流程-1 Java数据库操作流程-2 示例 直接使用JDBC的弊端 JDBC是一套规范,其规定统一的标准接口,各数据库厂商提供标准接口的实现;(ORM封装JDBC对数据库读写操作,提供上层对实体对象的操作) JDBC实现数据库访问的方式是在业务方法中直接嵌入SQL语句,SQL语句是面向关系的,依赖关系模型 JDBC方式缺点: ①实现业务逻辑的代码和数据库访问代码掺杂一起,使程序结构不清晰,可读性差; ②在程序代码中嵌入SQL语句,使开发人员不能完全运用面向对象的思维来写程序; ③业务逻辑和关系模型绑定,关系数据变化,必须手工修改代码中相关的SQL语句,增加维护软件难度 ④如果SQL语句有错误,在编译时不能检查,在运行时才能发现,增加调试难度。 ORM映射方式 对象的所有属性映射到表的所有字段 对象的某些属性映射到表的多个字段 对象中的属性(包括关联对象)映射到一个表和一个表的多个行 开发环境准备 开发步骤-1 开发步骤-2 开发步骤-3 开发步骤-4 开发步骤-5 开发步骤-5 结果 开发步骤-5 Hibernate体系结构 Hibernate 基本API 通过前面例子,接触几个Hibernate的基本类和相关API: Hibernate是优秀的ORM解决方案 使用POJO作为Java Bean,该对象没有掺杂及业务代码。 提供对象关系映射,使得对实体面向对象的设计更加完善 Hibernate在内部提供管理持久化对象的完善机制,支持事务处理和并发操作 提供二级缓存结构 提供面向对象的HQL和Criteria查询 总结 介绍应用程序分层体系结构 ORM技术背景(数据库操作、持久化、JDBC比较及ORM工具) Hibernate的环境配置及入门程序编写 Hibernate ORM Hibernate ORM 第1章 Hibernate介绍 软件应用程序体系 体系结构的类型 数据存取 业务逻辑 用户交互 数据持久层 业务逻辑层 表示层 注意:Layer和Tier区别 软件系统 物理 DB 控制流 数据流 系统复杂性 性能影响 分层影响? ORM是一种为了解决面向对象与关系数据库存在的互不匹配现象的技术。 对象 Table ORM 对象-关系映射 实际上通过XML文件描述对象和数据库元数据的映射,将Java中的对象 持久化到数据库中。 JVM 取得数据库连接 执行SQL语句 处理执行结果 释放数据库连接 JDBC-ODBC 取得数据库连接 执行SQL语句 处理执行结果 释放数据库连接 JNDI方式 A B .jar引入到开发项目环境中 准备数据库及设计相关表 创建项目,导入相关*.jar包 设计持久化类POJO 创建对象-关系映射文件(Hibernate默认将类名加上*.hbm.xml来 命名映射文件,并将其放在POJO同层包路径中) POJO类名及属性名和表名、字段名对应相同 缺省table属性 创建Hibernate配置文件 (数据源配置) 持久化数据 查询对象 HQL语言 应用程序 数据库 Hibernate Hibernate.cfg.xml *.hbm.xml 持久化对象(POJO) 位于org.Hibernate包下,表示应用程序与数据持久层之间交互操作单线程对象,隐藏JDBC连接,也是事务的工厂(带一级缓存) Session 位于org.Hibernate包下,生成Session SessionFactory 位于org.hibernate.cfg包下,负责加载Hibernate的配置及映射 可以用来构建一个SessionFactory Configuration Criteria cr = session.createCriteria(Stude
文档评论(0)