JPA 級聯操作 CascadeType

2021-10-07 12:02:58 字數 738 閱讀 3191

級聯操作是jpa表關聯關係註解 onetoone ontomany manytoone manytomany 中配置的屬性,代表本身對關聯的實體擁有的操作許可權;

為更方便的理解這裡假設

使用者表:user部門表:dept

使用者表中引用部門物件的實體

1.cascadetype.all

包含所有級聯操作,不建議直接使用根據實際業務給相應許可權

2.cascadetype.persist
級聯儲存: 儲存使用者時可以同時儲存建立的部門並建立外來鍵關聯

3.cascadetype.merge
級聯更新: 在使用者中可以修改關聯的部門資訊

4.cascadetype.remove
級聯刪除: 在部門中配置,刪除部門時同時刪除部門下的使用者

5.cascadetype.refresh
級聯重新整理: 這個不太理解,後續在補充

6.cascadetype.detach
級聯脫管/游離操作: 刪除部門時部門被使用者外來鍵引用,無法刪除.配置了detach就可以撤銷使用者的外來鍵關聯刪除部門

mysql資料庫是不會生成外來鍵的,其它資料庫暫未測試

3 JPA物件關係對映 級聯操作

物件對映關係分為單向關係和雙向關係,單向關係只在一方物件上存在對方物件,雙向關係是在雙方物件上存在彼此物件。public class department implements serializable joincolumn private list employeelist 在沒有 joincol...

springboot中jpa的級聯型別

1.all型別 包括所有的jpa級聯型別和hibernate的級聯型別,就是在實體的關聯註解上使用的級聯型別。2.persist的操作會將物件持久化,當使用cascadetype.persist時,代表持久化父物件時,子物件也相應的持久化,也就是級聯儲存。3.merge操作會將具有相同識別符號的物件...

mysql的級聯操作 mysql的級聯操作

1.建立表a create table a name char 20 not null,id char 20 not null primary key 2.建立表b create table b b name char 20 not null,b id char 20 not null constr...