如,有兩個物件。user,order(乙個人可以有多個訂單).那麼這個是一對多關係。在建立orm時:
1 user 實體(類偽碼):
@entity
@table(name="t_user")
public class user
2 order 實體(類偽碼):
@entity
@table(name="t_order")
public class order,fetch = fetchtype.lazy)
@joincolumn(name = "user_id")
private user user;
}
現在在考慮紅字部分的必要性:
a 刪除第一部分
b 第二部分,不級聯,直接對映資料庫的字段。@column(name="user_id") private string userid;
我所知道的它的好處:
1 當獲取user物件後,可以直接點取order物件;
2 對應的級聯特性;
對於這兩點:
都可以通過顯示增加**量來完成。而且實際上,**量並不是很多。
可以避免hibernate繁雜的對映關聯。
我所不清楚的:在效能上面,有沒有什麼區別(我是覺得沒有什麼太大效能區別,而且換成顯示控制,還可以增加靈活性)?
求教
hibernate的多對多級聯查詢
資料庫的多對多 1.1 資料庫中不能直接對映多對多 處理 建立乙個橋接表 中間表 將乙個多對多關係轉換成兩個一對多 注2 交叉連線 注3 外連線 left 左 right 右 full 左右 主從表 連線條件不成立時,主表記錄永遠保留,與null匹配 hibernate的多對多 2.1 hibern...
Hibernate 一對多級聯刪除
背景 系統中有post 表和replay 表。分表表示帖子和帖子回覆的表。一篇帖子可以有多個回覆。要求 現在要求刪除一篇帖子的同時刪除對應的replay 表中該帖子的所有回覆。實現 在post.hbm.xml 中這樣配置 即在 一方 的hbm.xml檔案中 set name replaies inv...
Hibernate級聯操作
最近在寫專案用到了hibernate,在使用一對多級聯操作的時候遇到了發現無法級聯儲存多的一方,首先介紹一下問題背景 使用者 user 與訂單 order 一對多關係,乙個使用者可以擁有多個訂單 一開始我把使用者存在session域中,在後台我取出了user物件 user u user reques...