說明
??????? 在HibernateAnnotations中通過@ManyToMany注解可定義多對多關聯。同時,也需要通過注解@JoinTable描述關聯表和關聯條件。對于雙向關聯,其中一端必須定義為owner,另一端必須定義為inverse(在對關聯表進行更性操作時這一端將被忽略)。被關聯端不必也不能描述物理映射,只需要一個簡單的mappedBy參數,該參數包含了主體端的屬性名,這樣就綁定了雙方的關系。
??????上周六去電影院圓了兒時的夢想,看了變形金剛,超棒的一部片子 ^_^。那么就以劇院和觀眾為例講解吧。
如何制作PO
1)找到CUBE--需要引入哪些類:











2)找到汽車人--主體端:




















































功能說明:
@ManyToMany注解
???? targetEntity屬性:指向被關聯端的實體對象
???? cascade屬性:與Hibernate xml配置文件中的意思一樣,這里選用兩種方式
????????????CascadeType.PERSIST:若實體是處于被管理狀態,或當persist()方法被調用時,觸發級聯創建(create)操作。???
????????????CascadeType.MERGE:若實體是處于被管理狀態,或當merge)方法被調用時,觸發級聯合并(merge)操作。
?????????????其它屬性如CascadeType.REMOVE、CascadeType.REFRESH、CascadeType.ALL等屬性可參考Hibernate Annotations Reference。
???? fetch屬性:關聯關系獲取方式
?????????????? LAZY(默認值)在第一次訪問關聯對象時才觸發相應的查詢操作。
?????????????? 另一個值EAGER是通過out join select直接獲取關聯對象
????
@JoinTable注解
???? name屬性:指定關聯表名 若不指定Hibernate可以根據既定的規則自動生成(具體規則見reference)
???? joinColumns屬性:指定主體端的外鍵
???? inverseJoinColumns屬性:指定被關聯端的外鍵
@Cache注解
???? usage屬性:給定了緩存的并發策略
3)找到霸天虎--被關聯端:












































@ManyToMany注解
???? mappedBy屬性:指定了主體端的屬性名,用以綁定雙方的關系???
汽車人,變形!--如何操作























tips:注意第二步的操作。
好了,大功告成!說回電影,紅蜘蛛這小子跑得還挺快,期待續集!
PS:找到一份中文的hiberante?annotations reference,與大家共享。點擊下載
??????????????????????????????????????????????????????????????????????????????THE END
????????????????