2014年6月11日 星期三
Java Hibernate 關聯映射 inverse & cascade
有關於 Hibernate 比較有脈絡的介紹,可以參考這邊
用了 Hibernate 好幾年,
目前也只用到 基本配置、資料查詢 (Criteria, HQL, SQL)、基本的Object-Relational Mapping
以前很少,也很懶得去設定 RDBMS 的關聯
都只是用 Single Table 的 CRUD
對於需要關聯的 Table 就用程式做掉
所以為什麼說只用到基本的ORM
因為頂多只會配置繼承映射
也因為如此~
一直沒有去研究映射的屬性
最近剛好做到一個功能,想說試試看多對多關聯
順便也研究一下其他一對多、多對一、一對一的配置方式
基本上這些關聯的用法與使用時機,就不在這裏多做介紹
因為我認為這些可不是三言兩語可以瞭解的
有興趣的朋友可以回去翻大學時的 資料庫管理系統
=~=~=~=~=~=~=~=~=~=~=~=~=主題分隔線=~=~=~=~=~=~=~=~=~=~=~=~=
呼~終於進入主題了
先來說一下這篇主要介紹的兩個屬性 inverse & cascade
請不用浪費時間將它們貼去 google 翻譯
因為只看文字本身的意思根本很難理解他們的用途
inverse (true/false, default false),負責控制關係,默認為false,也就是關係的兩端都能控制
這個屬性是在雙向關聯時使用,如果設定為 true,則控制權為對方
例如:
A, B 物件為雙向多對多關聯,此時A的inverse設定為true,則控制權為B
cascde (default none/save-update/delete),設定關聯持久化對象的操作層級
比如我刪除一個對象,那麼跟它是多對一關係的對像也全部被刪除。
詳述請看此
兩個屬性的比較與舉例可以看此
本來想說自己舉幾個例子跟設定的
但真的很懶,有空再補上吧~
http://www.mkyong.com/hibernate/hibernate-cascade-example-save-update-delete-and-delete-orphan/
http://docs.jboss.org/hibernate/orm/4.3/manual/en-US/html/
訂閱:
文章 (Atom)