zoukankan      html  css  js  c++  java
  • hibernate -inverse

    one to many

      inverse=false只能设置维护关联关系的多的一方,

      

    inverse属性:
    默认为false,表示本方维护关联关系。
    如果为true,表示本方不维护关联关系(并不意味着对方维护)。
    只是影响是否能设置外键列的值(设成有效值或是null值),对获取信息没有影响。

    A,

      解除关联关系

    •    从员工方解除  可以直接解除
    • // 从部门方解除(与inverse有关系,为false时可以解除)

    B. 删除

    删除员工方(多方),对对方没有影响

    // 删除部门方(一方)
    // a, 如果没有关联的员工:能删除。
    // b, 如果有关联的员工且inverse=true,由于不能维护关联关系,所以会直接执行删除,就会有异常
    // c, 如果有关联的员工且inverse=false,由于可以维护关联关系,他就会先把关联的员工的外键列设为null值,再删除自己。

    many to many

    A.解除关联关系(中间表中记录删除)

     如果inverse=false就可以解除,如果为true就不可以解除

    B,// 删除对象,对关联对象的影响

    // a, 如果没有关联的对方:能删除。
    // b, 如果有关联的对方且inverse=false,由于可以维护关联关系,他就会先删除关联关系,再删除自己。
    // c, 如果有关联的对方且inverse=true,由于不能维护关联关系,所以会直接执行删除自己,就会有异常。

  • 相关阅读:
    android自定义Dialog
    go笔记-内存回收分析、内存统计信息字段释义
    go笔记-defer以及性能
    go笔记-goroutine和panic
    并发编程-高性能IO-reactor模式
    go笔记-查看coredump:delve调试工具
    IO多路复用[转]
    kubernates 1.20.6安装
    JavaScript 数组元素的一些操作
    如何理解 Java 多线程
  • 原文地址:https://www.cnblogs.com/daxiong225/p/4689628.html
Copyright © 2011-2022 走看看