考虑以下模型:
我确实希望将其与JPA和Hibernate正确映射。目前,我这样做的方法是向用户权利添加列表 - CustomerContracts和ConsulterContracts。
@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
来做到这一点答案 0 :(得分:1)
使用ERD / SQL无法做到这一点,因为JPA只是从面向对象编程到ERD的映射,所以不,没有办法。
您需要更改ERD,以便有一个中间实体,其键是UserId,ContractId和Role。