2011-11-04 269 views
0

在A.id!= B.id(如hibernate提供一對一關聯)的情況下,我應該如何映射A和B類之間的一對一關聯和我想擁有像A.b_id = B.id這樣的關聯嗎?它應該被映射爲多對一(對於A)關聯嗎?雙向性是不需要的。休眠 - 正確的一對一映射

回答

1

除了OneToOne之外,您只需指定連接列的名稱,並且hibernate將加入您想要的任何內容。

@OneToOne 
@JoinColumn(name="B_ID", referencedColumnName="ID") 
private B b; 

將其映射到XML中的常規方法是作爲一個獨特的多對一。

<many-to-one name="b" 
    column="b_id" 
    unique="true"/> 
+0

hmmmm。它在hbm.xml中看起來如何? –

+0

afaik有一列=「b_id」屬性,你可以添加到一對一的,但我不熟悉基於xml的休眠。 – Affe

+1

@Andrey:http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html_single/#assoc-unidirectional-121 hibernate參考手冊是查找有關Hibernate的參考信息的最佳位置。 –