zoukankan      html  css  js  c++  java
  • hibernate级联(cascade和inverse) .

    级联(Cascade),两个以上的设备通过某种方式连接起来,能起到扩容的效果就是级联。Hibernate级联(Cascade)是用来说明数据库中连个表之间的相互关系(一对一,一对多,多对多)中,当对主对象进行某种操作时,是否也对其关联的从对象作类似的操作,常见的级联(Cascade)有:
    (1)none:在保存,删除或者修改当前对象时,不对其附属对象(关联对象)进行级联操作,它为默认值。
    (2)save-update:在保存,更新当前对象时,级联保存,更新附属对象(临时对象,游离对象等)。
    (3)delete:在删除当前对象时,级联删除附属对象
    (4)all:所有情况下均进行级联操作,
    (5)delete-orphan:删除此对象的同时删除与当前对象解除与当前对象解除关系的孤儿对象(仅仅使用于一对多关联关系中)

    对Hibernate session的每一个基本操作,如:persist(),merge(),saveOrUpdate(),delete(),lock(),refresh(),evict(),replicate(),都有一个相关的级联形式与之对应。

    inverse: 表示“是否放弃维护关联关系”(在Java里两个对象产生关联时,对数据库中表的影响),hibernate的缺省值为false。在<one-to-many>和<many-to-many>关联关系的集合定义中使用,inverse="true"表示该对象不维护关联关系。该属性的值在使用有序集合时(list,array等)时一般设置为false.<one-to-many>维护关联关系就是更新外键;<many-to-many>维护关联关系就是在中间表中增减记录!


    cascade 和inverse的区别:
       可以这样理解,cascade 定义的是关系两端对象到对象的级联关系;而inverse定义的是关系和对象的级联关系。

  • 相关阅读:
    面向对象(OOP:Objdec Oriented Programming)
    vue中v-model和v-bind区别
    DateTimeFormat
    html中frameset简介
    学习及资料地址
    mybatis+oracle批量新增带序列List对象
    Io流读取并输出文件(例如.mp3格式文件)
    Java从服务器下载图片保存到本地
    转:Java DecimalFormat的主要功能及使用方法
    数据库事务隔离级别-- 脏读、幻读、不可重复读(清晰解释)
  • 原文地址:https://www.cnblogs.com/a1280055207/p/2869475.html
Copyright © 2011-2022 走看看