1. 單向一對一
(1)主鍵關聯:兩個表通過主鍵建立一對一關聯關係,從表的主鍵由被關聯類生成。
對映**:
class
="foreign"
/>
name
="關聯屬性的屬性名"
class
="持久化類"
constrained
="true"
>
one-to-one
>
(2)外來鍵關聯:兩張表的主鍵不同,通過在一張表中新增外來鍵來保持一對一。
對映**:
class
="identity"
>
name
="關聯屬性的屬性名"
class
="持久化類"
unique
="true"
>
many-to-one
>
3. 單向一對多主要通過外來鍵關聯,在多的一端新增乙個外來鍵,由「一」的方向指向「多」的一方。在「一」的一方新增one-to-many
對映**:
name
="adresses"
table
="adress"
inverse
="false"
lazy
="true"
>
>
name
="user_id"
>
key>
class
="address"
/>
set>
4. 單向多對一通過外來鍵關聯,由「多」的一方指向「一」的一方,在「多」的一方資料表增加乙個外來鍵指向「一」表示的資料表,「一」的一方作為主表,「多」的一方作為從表。在「多」的一方使用many-to-one
對映**:
name
="關聯屬性屬性名"
class
="持久化類"
fetch
="join"
>
name
="外來鍵列"
/>
many-to-one
>
5. 單向多對多
name
="adresses"
table
="user_adress"
inverse
="false"
lazy
="true"
>
>
name
="userid"
>
key>
class
="address"
/>
set>
6. 雙向一對一(1)主鍵關聯:在需要的一方配置檔案中將主鍵生成策略配置成foreign,即表示需要根據另一方的主鍵來生成自己的主鍵,而該實體本身不具有自己的主鍵。
對映檔案如下:
(2)外來鍵關聯:外來鍵可以放在任意一方。
對映檔案如下:
Hibernate 實體關聯關係對映
hibernate 實體關聯關係對映 花了三天的業餘時間,終於寫完了hibernate關聯關係對映的所有例項,感覺還應該總結一下。hibernate對映關係錯綜複雜,在實際中真的都能用到嗎?不用行嗎?在我看來,hibernate提供這些對映關係,常用就是一對一和多對一,並且在能不用連線表的時候盡量不...
Hibernate關聯關係對映 ORM)
hibernate入門 首先要了解幾點,hibernate實體對映技術及其設計上的一些通用策略。對於orm而言,乙個非常關鍵的特性,就是實體之間關聯關係的管理。資料關聯是orm的乙個重要特徵 在一方維護關聯資訊,在另一方不做處理。如何理解?在實際應用中往往需要根據查詢到的結果獲得相關的其他持久化的資...
Hibernate實體關聯對映關係
hibernate關聯關係對映,包括單向關聯和雙向關聯,而 單向關聯又有 一對一外來鍵單向關聯 一對一主鍵單向關聯 一對一連線表單向關聯 一對多外來鍵單向關聯 一對多連線表單向關聯 多對一外來鍵單向關聯 多對一連線表單向關聯 多對多單向關聯 雙向關聯有 一對一外來鍵雙向關聯 一對一主鍵雙向關聯 一對...