2
我想創建一個表,其中對象的primary key
也應該用作兩個@ManyToOne
表的foreign key
。如何將主鍵也用作JPA和Hibernate的外鍵引用?
如果不創建額外的表列既引用和重複相同的主鍵ID,這是可能的嗎?
實施例:
@Entity
public class Person {
@Id
private int personId;
@ManyToOne
@JoinColumn(name="fk_address_id", [email protected](name="fk_address"))
private Address address;
@ManyToOne
@JoinColumn(name="fk_location_id", [email protected](name="fk_location"))
private Location location;
}
問題:@Id
爲Address
和Location
總是相同@Id
從Person
。 上面的映射將導致hibernate生成3列。 id, fk_address, fk_location
,其中每列具有相同的值(id)。
問題:是否有可能只爲該人擁有primary key
@Id,並且同時告訴hibernate這是另外一些@ManyToOne
外鍵映射的外鍵,而不創建這些列?
看看[這裏](http://stackoverflow.com/questions/29594577/hibernate-how-to-map-two-many-to-多對同一實體/ 29603999#29603999)帖子。 – wypieprz