2012-09-18 25 views
0

考慮以下模型:休眠 - 多到許多與角色

enter image description here

我確實想與JPA這個映射和Hibernate正常。目前我這樣做的方式是將用戶實體 - 客戶合同和諮詢合同添加到列表中。

@OneToMany(mappedBy = Contract.CUSTOMER_COLUMN, fetch=FetchType.EAGER,targetEntity=Contract.class) 
private Set<Contract> customerContracts = new HashSet<Contract>(); 

@OneToMany(mappedBy = Contract.CUSTOMER_COLUMN, fetch=FetchType.EAGER,targetEntity=Contract.class) 
private Set<Contract> consulterContracts = new HashSet<Contract>(); 

如果您需要瀏覽此模型,這並不是非常「方便」!

問題是,我寧願在用戶端只有一個列表 - 合同 - 但仍然需要在合同方(顧問和客戶)的用戶屬性。

有沒有辦法不使用Hibernate和JPA做到這一點

回答

1

沒有辦法用ERD/SQL做到這一點,正如JPA是剛剛從面向對象編程ERD的映射,則沒有,有沒門。

您需要更改ERD,以便有一箇中間實體,其鍵爲UserId,ContractId和Role。

+0

好的,謝謝 - 這就是我害怕的... – Alexander