版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、企业级JAVA II,软件工程系:聂常红 cred_,内容回顾:,Session和SessionFactory缓存机制 使用MyEclipse创建数据库连接 连接池的使用 继承映射的三种策略,第11讲 关联映射,11.1 概述 11.2 多对一与一对多关联 11.3 一对一关联 11.4 多对多关联,11.1 概述,一个信息系统中的数据库表之间经常存在一定的关联关系,同样持久化类之间也存在一定的关联关系,使用Hibernate可以将这两种关联关系进行映射。 类之间的关联是指一个类可以访问另一个类的属性和方法 根据关联的导航性,可以分为单向关联和双向关联 关联方式: 一对一 一对多或多对一 多对
2、多,11.2 多对一和一对多关联,多对一和一对多关联是从不同的方向来看的结果,如用户和银行帐户,从用户角度看是一对多关系;而从银行帐户角度看则是多对一关系,单向多对一关联,语法: 需要在“多”的一方(主动方)的持久化类中声明一个“一”方(被动方)类型的属性 在“多”的一方的映射文件中使用来定义关联关系 需要在中使用column属性设置指向被动方主键的关联外键,对象模型图,单向多对一关联应用示例,创建持久化类Accout.java:,创建持久化类User.java:,编写映射文件Accout.hbm.xml :,编写映射文件User.hbm.xml :,修改hibernate.cfg.xml,编
3、写DAO接口及其实现类:,编写DAO接口及其实现类:,编写测试类:,单向一对多关联,语法: 需要在“一”的一方(主动方)的持久化类中声明一个元素为“多”方(被动方)类型的集合属性 在主动方的映射文件中使用设置关联属性 在标记对之间必须使用设置被动方映射表中与主动方映射表关联的外键字段名 使用来定义关联关系 可在中使用cascade属性设置级联操作(可选),级联操作:是指主动方对象执行操作时,被关联对象(被动方)是否同步执行同一操作,常用属性值:save-update, delete,merge,persist,all等,对象模型图,单向一对多关联应用示例,创建持久化类User.java:,创建
4、持久化类Accout.java:,编写映射文件User.hbm.xml :,声明一个被动方映射表中的外健字段名,编写映射文件Accout.hbm.xml :,编写测试类:,双向一对多关联,语法: 同时应用单向一对多和单向多对一关联的语法 可在一对多关联的设置中设置控制反转:在中设置属性inverse=“true”可将控制权由“一”方转给“多”方(可选),对象模型图,双向一对多关联应用示例,创建持久化类User.java:,创建持久化类Accout.java:,编写映射文件User.hbm.xml :,编写映射文件Accout.hbm.xml :,编写测试类:,11.3 一对一关联,一对一关系表
5、在hibernate映射中使用两种处理方式: 唯一外键: 是多对一的特殊形式,要求在多方映射表中指向一方的外键不能重复出现 共享主键: 指的是主动方的主键通过外键的方式使用被动方的主键,对象模型图,唯一外键关联,语法: 需要在关联主动方中声明一个关联被动方类型的属性 需要在关联主动方的映射文件中使用来定义关联关系,并且设置其属性unique=“true” 如果是双向关联,则在另一个关联方的映射文件中使用来定义关联关系,唯一外键关联应用示例,创建持久化类Manager.java:,创建持久化类Department.java:,编写映射文件Manager.hbm.xml,编写映射文件Departm
6、ent.hbm.xml,编写测试类:,共享主键关联,语法: 需要在关联主动方中声明一个关联被动方类型的属性 需要在每个持久类的映射文件中使用来声明一对一关联关系 主动方的主键生成方式必须设置为“foreign”,编写映射文件Department.hbm.xml,11.4 多对多关联,多对多关联通常需要使用一个中间表来关联,对象模型图:,语法: 需要在关联主动方的持久化类中声明一个元素为被动方类型的集合属性 在主动方的映射文件中使用定义被动方类型的属性,并使用table属性定义中间表 在标记对之间使用 定义主动方在中间表中映射的外键 使用来定义关联关系,并在其中使用column属性定义被动方在中间表中映射的外键,双向多对多关联应用示例,创建持久化类Order.java:,创建持久化类Product.java:,编写映射文件Order.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 会议纪律与秩序维护制度
- 2026年网络攻击防范策略实战练习题
- 2026年地理学知识考试题库及正确答案详解
- 2026年公共管理基础知识与实务操作能力考试预测模拟题
- 2026年建筑师考试专业基础题库与答案详解
- 2026年证券从业考试投资分析策略与实践题库
- 2026年新版副产品协议
- 检验科检验报告丢失的补办处理流程及制度
- 2025 小学六年级科学上册蚂蚁群体分工行为观察记录课件
- 2025年陕西航空职业技术学院马克思主义基本原理概论期末考试模拟题含答案解析(夺冠)
- 八年级地理上册《中国的气候》探究式教学设计
- 重庆市2026年高一(上)期末联合检测(康德卷)化学+答案
- 2026年湖南郴州市百福控股集团有限公司招聘9人备考考试题库及答案解析
- 2026贵州黔东南州公安局面向社会招聘警务辅助人员37人考试备考题库及答案解析
- 2026年数字化管理专家认证题库200道及完整答案(全优)
- 铁路除草作业方案范本
- 2026届江苏省常州市生物高一第一学期期末检测试题含解析
- 2026年及未来5年市场数据中国高温工业热泵行业市场运行态势与投资战略咨询报告
- 教培机构排课制度规范
- 2026年检视问题清单与整改措施(2篇)
- 国家开放大学《基础教育课程改革专题》形考任务(1-3)试题及答案解析
评论
0/150
提交评论