• Hibernate inverse


      inverse 用来设置由谁来管理关联关系。

      如果为false为双方都可以管理关系,谁管理关系谁维护,如果都管理的关系,双方都可以维护。当关系由多对一端来维护时,效率较高,当关系由一对一端来维护时,会多执行update语句。看下面例子。

      1.由一对端来管理:

     

      我们来看一下打印的sql:

      这里就不仅有3条insert语句。还有2条update语句,需要先去保存多对端的数据,再保存一对端的数据,最后再去修改多对端的数据,效率不高。

      2.由多对端来管路:

     

      我们来看一下打印的sql

      这里仅仅只有三条insert语句,不再需要update,所以由多对端来管理关系效率较高。

      3.双方共同管理:

      双方共同管理的话,效果跟一对方管理效果一样,也会先去insert然后再去update。

      如果为true则关系由设置的另一方来管理。如果一对端设置inverse为true则一对端不会去维护关系,不管有没有给对方设置关联值都不会去管理。建议给一对端设置inverse=“true”,让多对端去管理关系,这样效率更高。

     

    注:本文是在学习期间根据网上视频写的学习笔记,如有侵权请联系删除!

  • 相关阅读:
    题解-Quantifier Question
    题解-[WC2011]最大XOR和路径
    笔记-Recursive Queries
    树套树
    SG函数
    题解-Magic Ship
    分块
    文章根据时间段显示的微信名和微信号
    jquery 在页面上根据ID定位(jQuery锚点跳转及相关操作) 经典
    nginx配置反向代理
  • 原文地址:https://www.cnblogs.com/wuyx/p/8016906.html
Copyright © 2020-2023  润新知