zoukankan      html  css  js  c++  java
  • hibernate中一对多 多对多 inverse cascade

    ----------------------------一对多-------------------------------------------

    inverse属性:是在维护关联关系的时候起作用的。

        表示控制权是否转移(在一的一方起作用)

    inverse=false    不反转,当前方有控制权

    inverse=true  控制反转,当前方没有控制权

      保存数据:会影响到多的一方的数据

           一的一方在保存数据时候 不会维护多的一方数据(多的一方数据不会保存到数据库中)

      解除关联关系.clear()  方法

          inverse=false  解除与多的一方关系  就是把多的一方的外键设为null 

          inverse=true   不会解除

      删除关联关系

          inverse=false   可以删除 并且把关联的多的一方 也删除了

          inverse=true  报错

    cascade属性:表示级联操作(一的一方或者多的一方都可设置)级联操作慎用

      none  不级联操作,默认值

      save-update:级联保存或者更新

      delete:级联删除

      all:级联所有

    -------------------------------多对多==================================

    多对多  ,保存(只能通过一方维护另外一方 不能重复维护)维护的一方必须设置级联操作  cascade="save-update"  

        inverse=true  会影响结果  中间表不会保存数据 inverse=false 不会影响 会级联操作

    查询数据:

        inverse=true 及  inverse=false  都不会影响 

    解除关系:

        inverse=true  会影响结果  中间表不会删除关系数据 inverse=false 不会影响结果 会级联操作中间表(只会删除中间表数据)

    删除数据:

        inverse=true  会影响结果  中间表不会删除关系数据,只会删除本表数据(会报错) inverse=false 不会影响结果 会级联操作中间表(先删除中间表关联数据  然后删除本表数据)

  • 相关阅读:
    前端面试常考知识点---CSS
    vue中的适配:px2rem
    判断DOM元素是否出现再浏览器窗口中
    前端构建:3类13种热门工具的选型参考
    webpack4 中的最新 React全家桶实战使用配置指南!
    [C++] 自动关闭右下角弹窗
    Java RandomAccessFile用法(转载)
    Java Annotation详解(二): 反射和Annotation
    Java Annotation详解(一): 理解和使用Annotation
    Java反射机制(五):使用反射增强简单工厂设计模式
  • 原文地址:https://www.cnblogs.com/ly-china/p/5452701.html
Copyright © 2011-2022 走看看