有复合键而没有JoinTable的Hibernate ManyToMany吗?

时间:2019-04-03 13:11:44

标签: java database hibernate jpa hibernate-mapping

我在Postgres中有一个复杂的星座。假设无法更改数据库结构,是否可以在Hibernate中表示出来?

TableA具有列u,v,w。密钥是u和v的组合。 表B具有x,y,z列。密钥是x和y的组合。 TableA.u包含与TableB.x相同类型的数据,但是当然u和x在各自的表中并不是唯一的。我想获取TableA的每个条目,并让其实体包含TableB的每个条目的Collection,其中TableA.u = TableB.x。

  • 我尝试了ManyToMany,但是由于无法在数据库上创建实际的联接表,因此遇到了限制。
  • 我还尝试了OneToMany,因为由于我只想从每个TableA条目到每个TableB条目得出结论,而不是相反,因此可以将其解释为1对n的关系。这也失败了,因为我在TableA中使用了复合键-Hibernate正确地告诉我TableA.u不够,因为它不是唯一的。
  • 最后我尝试了@ElementCollection,但是也失败了,可能是因为组合键所致。

有什么办法可以在冬眠中代表这个星座?

0 个答案:

没有答案
相关问题