hibernate基础17:cascade 级联 与 Inverse 反转

Posted 来临

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hibernate基础17:cascade 级联 与 Inverse 反转相关的知识,希望对你有一定的参考价值。

1、cascade级联操作:表示当操作一个对象时,是否级联操作与之关联的对象。在many-to-one
的映射中,不建议使用 cascade=”delete”;如果 cascade 的值不为 none 时,操作对象需要关联
对象的数据时,会先操作关联对象。在 one-to-many 中使用 cascade=”save-update”将会多出
更新 sql 语句;效率比较低,不建议使用。
Many-to-one

<hibernate-mapping>
    <!-- class 配置类 name 指类名 table 指定表名 如果不写,默认类名 为表名 -->
    <class name="cn.sxt.pojo.User" table="t_user">
        <id name="id" column="id">
            <generator class="identity">
            </generator>
        </id>
        <!-- property 是配置类的属性 name 指属性名 -->
        <property name="name" length="40" />
        <property name="age" />
        <!-- cascade 表示级联操作 
            none 默认值 不级联 
            save-update 保存更新时级联 
            delete 删除时级联 
            all 所有动作都级联 
        -->
        <many-to-one name="role" column="roleId" cascade="all" />
    </class>
</hibernate-mapping>

2、Inverse 是(集合端)的一个属性表示由谁来管理关系(在双向映射)。

Inverse=”true”表示由关联关系的另一端来管理关系;

inverse:管理的是关联关系,

cascade:管理的级联关系。建议管理关联关系由多的一端来关联。

以上是关于hibernate基础17:cascade 级联 与 Inverse 反转的主要内容,如果未能解决你的问题,请参考以下文章

SSH三大框架Hibernate基础第九篇:cascade关联关系的级联操作

Hibernate--cascade级联

Hibernate5-1对多(1:n)-级联删除-cascade="delete-orphanl"

Hibernate关联关系 Cascade级联

Hibernate级联操作解密(inverse和cascade)

Hibernate中cascade属性的区别