- 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完全可以理解这种关联关系,并且对不同的关联关系提供了很好的支持。
关联关系的分类单向关联:只能单向访问关联端单向1-1单向1-N单向N-1单向N-N双向关联:关联的两端可以互相访问双向1-1双向1-N双向N-N以下以单向关联关系为例介绍
单向N-1映射关系实体类定义在N端定义1端的一个实例映射文件定义(N端)many-to-onename=“1端类路径”column=“N端生成的外键列名“cascade=“save-update,persist”/many-to-one
单向N-1映射关系实例演示N-1学生对班级相应CRUD操作演示
单向1-N映射关系实体类定义在1端定义N端的实例集合(一般是Set类型)映射文件定义(1端)setname=students“cascade=“save-update,persist”keycolumn=classesid/one-to-manyclass=Student//set
单向1-N映射关系实例演示1-N班级对学生相应CRUD操作演示
N-1和1-N总结N-1关联映射:在N端加入一个外键指向1端,它维护的关系是N指向11-N关联映射:在N端加入一个外键指向1端,它维护的关系是1指向N也就是说1-N和N-1的映射策略是一样的,只是站的角度不同N-1和1-N生成的数据库表是一样的,都是在N端生成一个外键列
单向1-1映射关系实体类定义在1端定义另一个1端的实例映射文件定义基于主键的单向1-1基于主键进行关联,基于主键关联的持久化类不能有自己的主键,它的主键由关联实体来负责生成,其主键生成策略使用foreign。
?id?name=id?column=person_id??????????!--?基于主键关联时,主键生存策略为foreign,表明根据关联实体的主键来生成该实体的主键?--?????????????generator?class=foreign????????????????param?name=“property”关联实体属性名/param??????????????/generator???/id??one-to-onename=“name”constrained=“true”标签表明当前主键上存在一个约束,一般是外键约束或者many-to-onename=addressunique=truecascade=save-update,persistcolumn=address_id/many-to-one
单向1-1映射关系实例演示1-1学生对地址地址对学生
单向N-N映射关系实体类定义在N端定义另一个N端的实例集合,一般是Set类型映射文件定义setname=rolestable=t_user_rolekeycolumn=userid/many-to-manyclass=“另N端类路径column=roleid//set
原创力文档


文档评论(0)