hibernate級聯操作

2021-08-14 08:11:35 字數 537 閱讀 6818

cascadetype.remove

級聯刪除操作。 刪除當前實體時,與它有對映關係的實體也會跟著被刪除。

cascadetype.merge

級聯更新(合併)操作。當student中的資料改變,會相應地更新course中的資料。

cascadetype.detach

級聯脫管/游離操作。 如果你要刪除乙個實體,但是它有外來鍵無法刪除,你就需要這個級聯許可權了。它會撤銷所有相關的外來鍵關聯。

cascadetype.refresh

級聯重新整理操作。

假設場景 有乙個訂單,訂單裡面關聯了許多商品,這個訂單可以被很多人操作,那麼這個時候a對此訂單和關聯的商品進行了修改,與此同時,b也進行了相同的操作,但是b先一步比a儲存了資料,那麼當a儲存資料的時候,就需要先重新整理訂單資訊及關聯的商品資訊後,再將訂單及商品儲存。

cascadetype.all

擁有以上所有級聯操作許可權。

cascadetype.persist

級聯持久化(儲存)操作(持久儲存擁有方實體時,也會持久儲存該實體的所有相關資料。)

Hibernate級聯操作

最近在寫專案用到了hibernate,在使用一對多級聯操作的時候遇到了發現無法級聯儲存多的一方,首先介紹一下問題背景 使用者 user 與訂單 order 一對多關係,乙個使用者可以擁有多個訂單 一開始我把使用者存在session域中,在後台我取出了user物件 user u user reques...

Hibernate 級聯刪除

在一對多的關係對映中 在一的一方配置檔案中將會配置set節點資訊 hbm.xml配置檔案中set節點的屬性 lazy 預設是true 即使用延遲載入,false表示即時載入 order by 一的一方set集合內多的一方實體集合的排序方式 預設是主鍵排序 但可以更改 cascade 是否使用級聯操作...

Hibernate多表操作 級聯 外來鍵維護

一對多 乙個部門對應多個員工,乙個員工只能屬於乙個部門。乙個客戶對應多個聯絡人,乙個聯絡人只能屬於乙個客戶 一對多建表 在多的一方建立外來鍵。多對多 乙個學生可以選擇多門課程,一門課程可以被多個學生選擇。乙個使用者可以選擇多個角色,乙個角色可以被多個使用者選擇。多對多建表 建立中間表。中間表至少有兩...