zoukankan      html  css  js  c++  java
  • springboot实体类的级联说明

    例子:

    @OneToOne(cascade=CascadeType.DETACH,fetch=FetchType.LAZY)
        @JoinColumn(name="user_id")
        private User user;

    CascadeType.PERSIST

      给当前设置的实体操作另一个实体的权限。这个理解可以推广到每一个CascadeType。

    CascadeType.REMOVE
      Cascade remove operation,级联删除操作。
      删除当前实体时,与它有映射关系的实体也会跟着被删除。

    CascadeType.MERGE
      Cascade merge operation,级联更新(合并)操作。
      当User中的数据改变,会相应地更新Course中的数据。

    CascadeType.DETACH
      Cascade detach operation,级联脱管/游离操作。
      如果你要删除一个实体,但是它有外键无法删除,你就需要这个级联权限了。它会撤销所有相关的外键关联。

    CascadeType.REFRESH
      Cascade refresh operation,级联刷新操作。
      假设场景 有一个订单,订单里面关联了许多商品,这个订单可以被很多人操作,那么这个时候A对此订单和关联的商品进行了修改,与此同时,B也进行了相同的操作,但是B先一步比A保存了数据,那么当A保存数据的时候,就需要先刷新订单信息及关联的商品信息后,再将订单及商品保存。

    CascadeType.ALL

    Cascade all operations,拥有以上所有级联操作权限。

     @joinTable

     https://www.jianshu.com/p/d8f1377ca773

  • 相关阅读:
    医学影像分割之HIP
    c++画分形之Julia集与Mandelbrot集
    趣题一道
    华山论剑常用角点检测与角点匹配方法比较
    改变鼠标样式
    Unity3D Pro 利用摄像头产生俯视地图效果
    unity3D小地图教程
    WebBrowser网址中特殊字符的问题
    打开多个unity3D项目 (项目多开)
    u3d按住鼠标右键才转动摄像机的方法
  • 原文地址:https://www.cnblogs.com/zhengyuanyuan/p/9718848.html
Copyright © 2011-2022 走看看