hibernate級聯操作時,外來鍵沒有被賦值

2021-09-29 08:54:02 字數 457 閱讀 6666

手動提交事務

注意:是否配置了inverse屬性,這也有可能是影響的乙個原因

雖然知道現在hibernate不流行了,但是我覺得還是稍微學一下比較好,萬一以後工作叫改老專案呢。哈哈哈,其實就是典型的不學不放心,希望越多越好而已,自己也知道學不完,不多瞎扯,說一下自己遇到的這個問題。

剛開始時採用的是在hibernate中寫

true
即在配置檔案中配置使事務自動提交,然後無論如何修改其他**,外來鍵依然還是無法賦值。

後來,突然想起hibernate配置了事務的自動提交,刪除操作還是要手動提交才有效,於是又跑去測試**中,手動獲取事務和提交,然後一試,發現成功了,nice!

事後,仔細對比了以下二者的sql語句,發現未手動提交事務時,**沒有設定外來鍵的sql語句。暈,當時覺得看sql麻煩就沒看,結果導致解決這問題花了這麼久時間。

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

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

Hibernate級聯操作

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

hibernate級聯操作

cascadetype.remove 級聯刪除操作。刪除當前實體時,與它有對映關係的實體也會跟著被刪除。cascadetype.merge 級聯更新 合併 操作。當student中的資料改變,會相應地更新course中的資料。cascadetype.detach 級聯脫管 游離操作。如果你要刪除乙個...