日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

hibernate级联操作详解

發布時間:2023/12/4 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hibernate级联操作详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

級聯操作 一.簡單的介紹 cascade和inverse (Employee – Department) l Casade用來說明當對主對象進行某種操作時是否對其關聯的從對象也作類似的操作,常用的cascade: none,all,save-update,delete, lock,refresh,evict,replicate,persist, merge,delete-orphan(one-to-many)。一般對many-to-one,many-to-many不設置級聯,在和中設置級聯。 l inverse表“是否放棄維護關聯關系”(在Java里兩個對象產生關聯時,對數據庫表的影響),在one-to-many和many-to-many的集合定義中使用,inverse=”true”表示該對象不維護關聯關系;該屬性的值一般在使用有序集合時設置成false(注意hibernate的缺省值是false)。 one-to-many維護關聯關系就是更新外鍵。many-to-many維護關聯關系就是在中間表增減記錄。 注: 配置成one-to-one的對象不維護關聯關系 二,屬性的解析 class元素的lazy屬性設定為true,表示延遲加載,如果lazy設為false,則 表示立即加載。以下對這二點進行說明。 立即加載:表示Hibernate在從數據庫中取得數據組裝好一個對象(如學生1)后, 會立即再從數據庫取得數據組裝此對象所關聯的對象(如學生證1)。 延遲加載:表示Hibernate在從數據庫中取得數據組裝好一個對象(如學生1)后, 不會立即再從數據庫中取得數據組裝此對象所關聯的對象(如學生1), 而是等到需要時,才會從數據庫取得數據組裝此關聯對象。 元素的cascade屬性表明操作是否從父對象級聯到被關聯的對象, 它 的取得可以是以下幾種: none:在保存,刪除或修改當前對象時,不對其附屬對象(關聯對象)進行級聯 操作。它是默認值。 save-update:在保存,更新當前對象時,級聯保存,更新附屬對象(臨時對象, 游離對象)。 delete:在刪除當前對象時,級聯刪除附屬對象。 all:所有情況下均進行級聯操作,即包含save-update和delete操作。 delete-orphan:刪除和當前對象解除關系的附屬對象。 元素的fetch屬性的可選值是join和select,默認是select。 當fetch屬性設定為join時,表示連接抓取(Join fetching):Hibernate通過 在Select語句中使用outer join(外連接)來獲得對象的關聯實例或者關聯集合。 當fetch屬性設定為select時,表示查詢抓取(Select fetching):需要另外發 送一條Select語句抓取當前對象的關聯實體或集合。 三。代碼練習

轉載于:https://my.oschina.net/chengzz/blog/760406

總結

以上是生活随笔為你收集整理的hibernate级联操作详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。