欢迎来到天天文库
浏览记录
ID:58607767
大小:350.43 KB
页数:13页
时间:2020-10-18
《hibernate各种关联关系.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一、多对一关联映射t_usert_groupid
2、name
3、groupidid
4、name1
5、菜10
6、11
7、尚学堂2
8、容祖儿
9、1会在多的一端加入一个外键,指向一的一端,这个外键是由中的column属性定义的,如果忽略了这个属性那么默认的外键与实体的属性一致标签的定义示例:*二、一对一主键关联1、一对一主键关联单向t_persont_idcardid
10、nam
11、eid
12、cardNo1
13、菜101
14、88888888882
15、容祖儿2
16、9999999999hibernate一对一主键关联映射(单向关联Person---->IdCard)一对一主键关联映射:让两个实体对象的id保持相同,这样可以避免多余的字段被创建具体映射:idCard17、>2、一对一主键关联双向t_persont_idcardid18、nameid19、cardNo320、菜10121、8888888888422、容祖儿223、9999999999hibern24、ate一对一主键关联映射(双向关联Person<---->IdCard)需要在idcard映射文件中加入标签指向person,指示hibernate如何加载person默认根据主键加载三、一对一外键关联1、一对一外键关联单向t_persont_idcardid25、name26、idcardid27、cardNo528、菜1029、10010030、8888888888631、容祖儿32、20020033、9999999999hibernate一对一唯一外键关联映射(单向关联Person---->IdCard)一对唯一外键关34、联映射是多对一关联映射的特例可以采用标签,指定多的一端的unique=true,这样就限制了多的一端的多重性为一通过这种手段映射一对一唯一外键关联2、一对一外键关联双向t_persont_idcardid35、name36、idcardid37、cardNo738、菜1039、10010040、8888888888841、容祖儿42、20020043、9999999999hibernate一对一唯一外键关联映射(双向关联Person<---->IdCard)一对一唯一外键关联双向,需要在另一端(idcard),添加44、-to-one>标签,指示hibernate如何加载其关联对象,默认根据主键加载person,外键关联映射中,因为两个实体采用的是person的外键维护的关系,所以不能指定主键加载person,而要根据person的外键加载,所以采用如下映射方式:四、一对多关联映射1、一对多关联映射单向t_classest_studentid45、nameid46、name47、classesid148、尚学堂149、1050、1251、祖儿52、1hihernate53、一对多关联映射(单向Classes----->Student)一对多关联映射利用了多对一关联映射原理多对一关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是多指向一一对多关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是一指向多也就是说一对多和多对一的映射策略是一样的,只是站的角度不同在一一端维护关系的缺点:*如果将t_student表54、里的classesid字段设置为非空,则无法保存*因为不是在student这一端维护关系,所以student不知道是哪个班的,所以需要发出多余的update语句来更新关系2、一对多关联映射双向t_classest_studentid55、nameid56、name57、classesid158、尚学堂159、1060、1261、祖儿62、1hihernate一对多关联映射(双向Classes<-----
17、>2、一对一主键关联双向t_persont_idcardid
18、nameid
19、cardNo3
20、菜101
21、88888888884
22、容祖儿2
23、9999999999hibern
24、ate一对一主键关联映射(双向关联Person<---->IdCard)需要在idcard映射文件中加入标签指向person,指示hibernate如何加载person默认根据主键加载三、一对一外键关联1、一对一外键关联单向t_persont_idcardid
25、name
26、idcardid
27、cardNo5
28、菜10
29、100100
30、88888888886
31、容祖儿
32、200200
33、9999999999hibernate一对一唯一外键关联映射(单向关联Person---->IdCard)一对唯一外键关
34、联映射是多对一关联映射的特例可以采用标签,指定多的一端的unique=true,这样就限制了多的一端的多重性为一通过这种手段映射一对一唯一外键关联2、一对一外键关联双向t_persont_idcardid
35、name
36、idcardid
37、cardNo7
38、菜10
39、100100
40、88888888888
41、容祖儿
42、200200
43、9999999999hibernate一对一唯一外键关联映射(双向关联Person<---->IdCard)一对一唯一外键关联双向,需要在另一端(idcard),添加44、-to-one>标签,指示hibernate如何加载其关联对象,默认根据主键加载person,外键关联映射中,因为两个实体采用的是person的外键维护的关系,所以不能指定主键加载person,而要根据person的外键加载,所以采用如下映射方式:四、一对多关联映射1、一对多关联映射单向t_classest_studentid45、nameid46、name47、classesid148、尚学堂149、1050、1251、祖儿52、1hihernate53、一对多关联映射(单向Classes----->Student)一对多关联映射利用了多对一关联映射原理多对一关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是多指向一一对多关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是一指向多也就是说一对多和多对一的映射策略是一样的,只是站的角度不同在一一端维护关系的缺点:*如果将t_student表54、里的classesid字段设置为非空,则无法保存*因为不是在student这一端维护关系,所以student不知道是哪个班的,所以需要发出多余的update语句来更新关系2、一对多关联映射双向t_classest_studentid55、nameid56、name57、classesid158、尚学堂159、1060、1261、祖儿62、1hihernate一对多关联映射(双向Classes<-----
44、-to-one>标签,指示hibernate如何加载其关联对象,默认根据主键加载person,外键关联映射中,因为两个实体采用的是person的外键维护的关系,所以不能指定主键加载person,而要根据person的外键加载,所以采用如下映射方式:四、一对多关联映射1、一对多关联映射单向t_classest_studentid
45、nameid
46、name
47、classesid1
48、尚学堂1
49、10
50、12
51、祖儿
52、1hihernate
53、一对多关联映射(单向Classes----->Student)一对多关联映射利用了多对一关联映射原理多对一关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是多指向一一对多关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是一指向多也就是说一对多和多对一的映射策略是一样的,只是站的角度不同在一一端维护关系的缺点:*如果将t_student表
54、里的classesid字段设置为非空,则无法保存*因为不是在student这一端维护关系,所以student不知道是哪个班的,所以需要发出多余的update语句来更新关系2、一对多关联映射双向t_classest_studentid
55、nameid
56、name
57、classesid1
58、尚学堂1
59、10
60、12
61、祖儿
62、1hihernate一对多关联映射(双向Classes<-----
此文档下载收益归作者所有