- 1、本文档共53页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[互联网]网站设计与架构hibernate
Hibernate技术讲师:朱建启 内 容 1.Hibernate概述√ 2.单表O/R数据库映射 3.多表O/R数据库映射 4.HQL语言 5.对象状态管理 6.最佳建议 1.Hibernate概述 在本课程实践中,我们推荐大家使用Hibernate 架构来解决数据持久层,及其与前端应用层之间的 交互。 Hibernate是一个面向Java环境的对象/关系数 据库映射工具,用来把对象模型表示的对象映射到 基于SQL的关系模型数据结构中,还提供数据查询 和获取的方法,可以大幅度减少开发时人工使用 SQL和JDBC处理数据的时间。 1.Hibernate概述 Hibernate高层概览 1.Hibernate概述 Hibernate全面解决体系 内 容 1.Hibernate概述 2.单表O/R数据库映射√ 3.多表O/R数据库映射 4.HQL语言 5.对象状态管理 6.最佳建议 2.单表O/R数据库映射 这里涉及到三部分:关于整体数据库的hibernate.cfg.xml文件、每个表的 POJO/JavaBean类以及每个表的hbm.xml。 1.hibernate.cfg.xml 它是代替以前版本中的hibernate. Properties文件,默认在CLASSPATH根 目录中找到。主要是管理数据库的整体信息,比如:URL、driver、class、 dialect等,同时管理数据库中各个表的映射文件。 SessionFactory sf = new Configuration().configure().buildSessionFactory(); 使用模板向导产生的HibernateSessionFactory工具类。 2.单表O/R数据库映射 前面的动作完事后,在D:\myproject\mytest\src下面生成了 hibernate.cfg.xml文件;在D:\myproject\mytest\WebRoot\WEB-INF\lib 路径下面把Hibernate需要的Lib文件给复制了一份。 2.单表O/R数据库映射 2.持久化类(Persistent Class) 该类符合POJO(简单传统Java对象)规则,就能工作的最好。 a.为持久化字段声明访问器(Accessors)和是否可变的标志(Mutators), 形如getFoo,isFoo,setFoo; b.实现一个默认的构造方法(Constructor); c.提供一个标识属性(Idenfifier Property)(可选); d.建议使用不是final类。 3.hbm.xml 映射语言以Java为中心的,意味着映射是按照持久化类的定义来创建的, 而非表的定义,但我们一般都是以表出发来发射形成这样的映射,一般的 应用这样就够了,不满足就在此基础上面再修改。 内 容 1.Hibernate概述 2.单表O/R数据库映射 3.多表O/R数据库映射√ 4.HQL语言 5.Hibernate过滤器 6.对象状态管理 7.继承映射 8.小结 3.多表O/R数据库映射 多表的关系映射在实际的应用中比较的普遍,一般通过表与表之间的主 键/外键来建立关系,包括一对多(多对一)、一对一和多对多三种描 述,并且在PO持久化JavaBean中增加了针对关系的getter/setter方法。 接下来先看一对多(多对一)的关系映射演示。 多对多演示 内 容 1.Hibernate概述 2.单表O/R数据库映射 3.多表O/R数据库映射 4.HQL语言√ 5.对象状态管理 6.最佳建议 4.HQL语言 Hibernate支持三种查询方式: 1.HQL(Hibernate Query Language) 其语法形式很像SQL,是一种完全面向对象的,具备继承、多态和关联 2.条件查询(Criteria Query) 3.原生SQL查询 内 容 1.Hibernate概述 2.单表O/R数据库映射 3.多表O/R数据库映射 4.HQL语言 5.对象状态管理√ 6.最佳建议 5.对象状态管理 瞬时(Transient)、持久(Persistent)、脱管(Detached) 内 容 1.Hibernate概述 2.单表O/R数据库映射 3.多表O/R数据库映射 4.HQL语言 5.对象状态管理 6.最佳建议√ 6.最佳建议 1.设计细粒度的持久类并且使用component来实现映射; 2.对持久类声明标识符属性; 3.为每一个类写一个映射文件; 4.把映射文件
文档评论(0)