1. 程式人生 > >Hibernate的many-to-many雙向關聯需要注意的要求及簡單示例

Hibernate的many-to-many雙向關聯需要注意的要求及簡單示例

在做hbiernate的many-to-many的雙向關聯時,需要了解的幾點:

一方要設定inverse="true",另一方要設定inverse="false"。inverse="false"的一方儲存時,維護多對多之間的關係,且只要將相互的關係告訴這一方即可。

如果inverse都設定為true,雙方的關係將都不到維護。

如果都設定為false,雙方將共同維護之間的關係,這時,要將雙方的包含關係都要設定清楚,否則將會導致關係維護混亂。

如果設定了casade="save-update",只能設定一方,如果雙方都設定的話,當更新一方的時候,同時會更新另一方,另一方的更新又會導致一方的更新。

下例是一個多對多的程式碼演示,一個演員可以演多個角色,相反一個角色也可以由多個演員來演:

第一步:先間兩個JavaBean類

第二步配置其hbm.xml檔案:EmployeePO.hbm.xml配置

RolePO.hbm.xml配置


第三步配置對映檔案hibernate.cfg.xml

第四步寫一個DAO

第五步測試: