码迷,mamicode.com
首页 > Web开发 > 详细

2018.11.4 Hibernate中多对多的关系

时间:2018-11-04 19:27:18      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:关系型数据库   性能优化   属性   cascade   false   重复   级联   pre   多对多   

简单总结一下

多表关系

一对多/多对一
O 对象 一的一方使用集合. 多的一方直接引用一的一方.
R 关系型数据库 多的一方使用外键引用一的一方主键.
M 映射文件 一:
多:

操作: 操作管理级别属性. 

    cascade: 级联操作   
        减少我们书写的操作代码.
        none(默认值)   不级联
        save-update:    级联保存
        delete:         级联删除
        all:            级联保存+级联删除
    结论: 可以使用save-update.不推荐使用delete. 也可以不用cascade.
    inverse: 反转关系维护
        属于性能优化.关系的两端如果都书写了关系.那么两方都会发送维护关系的语句.
        这样,语句就发生重复.我们可以使用inverse使一的一方放弃维护关系.
        true            放弃
        false(默认值)  维护
    结论: 在一对多中,一的一方可以放弃维护关系.
        

多对多
O 对象 两方都使用集合.
R 关系型数据库 使用中间表.至少两列.作为外键引用两张表的主键.
M 映射文件 多:

操作:操作管理级别属性. 
    cascade: 级联操作   
        减少我们书写的操作代码.
        none(默认值)   不级联
        save-update:    级联保存
        delete:         级联删除
        all:            级联保存+级联删除
    结论: 可以使用save-update.不推荐使用delete. 也可以不用cascade.
    inverse: 反转关系维护
        属于性能优化.必须选择一方放弃维护主键关系.哪方放弃要看业务方向.

2018.11.4 Hibernate中多对多的关系

标签:关系型数据库   性能优化   属性   cascade   false   重复   级联   pre   多对多   

原文地址:https://www.cnblogs.com/qichunlin/p/9904700.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!