在Hibernate中映射对称关系

时间:2016-01-07 10:15:20

标签: java hibernate

我有一个User表和一个UserRelation表(简化示例)。用户可能与其他用户有0个或更多关系。 UserRelation表有两列:user1和user2。目前我在User.hbm.xml中有这个映射:

<set name="userRelations">
  <key column="user1" />
  <one-to-many class="UserRelation" />
</set>

然而,关系是对称的,所以我(我想)我想做的是这样的:

<set name="userRelations">
  <key column="user1 OR user2" />
  <one-to-many class="UserRelation" />
</set>

这样的事情是否可能,或者我是否采取了错误的方式?我总是可以为每个关系添加两行(Alice - &gt; Bob和Bob - &gt; Alice),但这看起来有点多余。另一种选择是拥有两套不同的套装,但这并不是特别直观。

0 个答案:

没有答案