- 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 ORM 最佳实践第2章 对象关系映射 回顾 介绍应用程序分层体系结构 ORM技术背景(数据库操作、持久化、JDBC比较及ORM工具) Hibernate的环境配置及入门程序编写 目标 了解Hibernate的对象标识符 学习Hibernate的主键生成机制 掌握Hibernate的映射类型 掌握对象继承关系映射 掌握关联关系映射 对象标识符 Hibernate使用OID(Object Identifier)来标识对象的唯一性,它是关系数据库中主键在Java对象模型中的等价物 重写对象equals和hashCode方法 Hibernate对主键分类 两种分类: ①单个主键、复合主键 ②自然(业务)主键、代理(逻辑)主键 Hibernate内置对象标识符生成策略 主键映射 单个主键映射 复合主键映射 示例 Hibernate的映射类型 Hibernate连接Java对象和数据库表,在映射表里,使用property及其他属性标签时,type属性既不是Java数据类型,也不是SQL数据类型,而是使用Hibernate的映射类型 映射类型分为:基本映射类型和自定义映射类型 继承关系映射 Hibernate提供3种继承持久化策略: ①每个子类一张表 ②每个类一张表 ③共享一个数据表 每个子类一个数据表 将父类属性分别加入到子类中去,分别对子类设计映射文件,针对子类对象进行操作,不能使用多态进行ORM操作。 每个类一个数据表 在父类映射表中利用标签joined-subclass定义其子类的映射 示例 代码 共享一个数据表 只定义一个父类表,在父表中包括子类属性对应的字段,同时增加一个区分子类类型的字段。在父类映射表中,定义标签discriminator来描述区分子类类型的字段,标签subclass定义子类的映射。 示例 代码 关联关系映射 使一个类知道另一个类的存在,表现在数据库中,通常用一个外键字段关联到另一张表。关联关系是有方向的,可以是单向,或双向的。 Hibernate提供下列检索策略: ①一对一关联 one-to-one ②一对多、多对一关联 one-to-many many-to-one ③多对多关联 many-to-many ④组件映射 component 关系映射(一) 多对一关系/一对多关系 它们是相对的关系,在关系映射表中使用标签many-to-one或one-to-many来映射关系. 代码 映射文件 代码 配置 问题 双向多对一关联 代码 关系映射(二) 一对一关联 当对象之间只存在唯一的一对一关系时,在映射表中使用one-to-one元素来定义映射关系 代码 映射文件 代码 关系映射(三) 多对多关联 借助中间表来完成多对多关联关系信息的保存,在映射文件中使用many-to-many标签 代码 映射文件 代码 总结 了解Hibernate的对象标识符 学习Hibernate的主键生成机制 掌握Hibernate的映射类型 掌握对象继承关系映射 掌握关联关系映射 教师-课程关系 teacher TC sise_course teacherID(PK) tname cid(PK) cname t_id+c_id(PK,FK) 中间表 false false Hibernate ORM Hibernate ORM 三个不同的OID Hibernate能够识别 三个不同的primary Key Hibernate根据对象标识符来维持Java对象和数据库表中记录的对应关系 问题 数据库表中每条记录PK值不同的,但是在Java中靠对象的内 存地址来识别的? Student s1=new Student(100,”TOM”,22); Student s2=new Student(100,“TOM”,22); Student s3=s1; System.out.println(s1==s2); System.out.println(s1==s3); false true 重写equals()与hashCode()方法,不仅比较对象的地址,同时比较对象的具体内容 Hibernate区分对象实体,是与数据库 记录一致的。 class name=“Student” table=“student” id name=“sid” column=“sno” type=“string” generator class=“assigned”/ /id … … /class 把组成主键的属性组成一个 类. 在映射表中:composite-id
您可能关注的文档
- 电和磁-复习浙教版.ppt
- 专业技术人员继续教育《专业技术人员创新案例读本》在线作业.doc
- 7-5球面反射境(2).ppt
- 初一政治下学期发现自己潜能.ppt
- 铜铝端头厂家分享光纤接线端子分类.docx
- 2015年化学与生活网上在线作业名称1.doc
- 新网上手续费结报操作指南.doc
- 高二数学排列培训教材2.ppt
- 杨继平,王兴超(山西大学)——道德认同对攻击行为的影响道德脱离的中介作用.ppt
- 我事业我做主.ppt
- 8 黄山奇石(第二课时)课件(共22张PPT).pptx
- 22《纸船和风筝》教学课件(共31张PPT).pptx
- 17 松鼠 课件(共23张PPT).pptx
- 23《海底世界》课件(共28张PPT).pptx
- 21《大自然的声音》课件(共18张PPT).pptx
- 第12课《词四首——江城子 密州出猎》课件 2025—2026学年统编版语文九年级下册.pptx
- 第2课《济南的冬天》课件(共42张PPT) 2024—2025学年统编版语文七年级上册.pptx
- 17 跳水 第二课时 课件(共18张PPT).pptx
- 第六单元课外古诗词诵读《过松源晨炊漆公、约客》课件 统编版语文七年级下册.pptx
- 统编版六年级语文上册 22《文言文二则》课件(共27张PPT).pptx
最近下载
- PPT高效制作与创意设计智慧树知到期末考试答案章节答案2024年南昌大学.docx VIP
- 《走进民间音乐》资料.docx VIP
- 肿瘤放射治疗学(南方医科大学)中国大学MOOC慕课章节测验答案(课程ID:1463742163).pdf VIP
- 零基础入门深度学习(全).pdf VIP
- 部编版五年级道德与法治上册第6课《我们神圣的国土》精美课件(第2课时).pptx
- xfer records serum血清合成器中文说明书.pdf VIP
- 钢结构课程设计.pdf VIP
- 2024年肥胖症诊疗指南要点解读课件PPT.pptx
- 2025年缆车项目立项申请书(立项备案).pdf VIP
- 数据结构讲义(严蔚敏版)第四章 串.ppt VIP
原创力文档


文档评论(0)