背景:
系統中有post
表和replay
表。分表表示帖子和帖子回覆的表。一篇帖子可以有多個回覆。
要求:現在要求刪除一篇帖子的同時刪除對應的replay
表中該帖子的所有回覆。
實現:在post.hbm.xml
中這樣配置 (即在「一方」的hbm.xml檔案中
)
<set
name
="replaies"
inverse
="true"
cascade
="all"
> 或者:
cascade="delete"
操作刪除的**
post post=postdao.findbyid(postid);postdao.delete(post);
這樣就會將某篇帖子及其回覆全部刪除了。
背景:系統中有post
表和replay
表。分表表示帖子和帖子回覆的表。一篇帖子可以有多個回覆。
要求:開啟某篇帖子,刪除了其中的某一條「回覆」。這時候要同時刪除該主題貼以及所有回覆。(不太符合常理)。
實現:
在post.hbm.xml中這樣配置<
set
name
="replaies"
inverse
="true"
cascade
="all"
>
或者:cascade="delete"
在replay.hbm.xml中這樣配置
<
many-to-one
name
="post"
class
="com.lhp.hibernate.beans.post"
fetch
="select"
lazy
="false"
cascade
="delete"
>
<
column
name
="postid"
not-null
="true"
/>
many-to-one
>
操作刪除的**
replay replay=replaydao.findbyid(replayid);replaydao.delete(replay);
解讀:在這個「一對多」關係中,「一方」和「多方」都設定了級聯刪除。那麼刪除了「多方」中的一條記錄,就會級聯刪除「一方」中的記錄,然後「一方」又會級聯刪除「多方」的所有記錄。
hibernate的多對多級聯查詢
資料庫的多對多 1.1 資料庫中不能直接對映多對多 處理 建立乙個橋接表 中間表 將乙個多對多關係轉換成兩個一對多 注2 交叉連線 注3 外連線 left 左 right 右 full 左右 主從表 連線條件不成立時,主表記錄永遠保留,與null匹配 hibernate的多對多 2.1 hibern...
hibernate的多對多級聯新增與刪除
hibernate的多對多級聯新增與刪除主表和從表建立請進入本博主的部落格 在hibernate的多對多級聯新增與刪除時一定要搞清楚他們之間的關係,xml表一定要建完整 希望通過以下 能對你有幫助 級聯新增 book.hbm.xml inverse false category.hbm.xml in...
hibernate 一對多(多對一)
舉個例子 乙個國家有多個省份,多個省份只有乙個國家,這個就是多對一和一對多,兩者就是看物件的角度問題 多對一關聯對映 在多的一端加入外來鍵指向一的一端,他維護的關係是多指向一 一對多關聯對映 在多的一端加入外來鍵指向一的一端,它維護的關係是一指向多 也就是說一對多和多對一的對映策略是一樣的,只是站的...