2
我尝试做以下(很做作的例子):休眠(映射到交叉引用表)
我有两个表& B中形成了许多一对多的关系,对此我已经创建了映射表A_B。然后我有一个表C,它与映射表A_B形成一对多的关系。
tableA
------
a_id [pk]
然后
tableB
------
b_id [pk]
然后
tableA_B
-------
a_id [pk]
b_id [pk]
然后
tableC
------
c_id [pk]
然后
tableC_AB
---------
c_id [pk]
a_id [pk]
b_id [pk]
所以在Hibernate中,我创建实体A,B &ç...
ClassA {
....
@JoinTable(
name="A_B",
joinColumns={@JoinColumn(name="a_id")},
inverseJoinColumns={@JoinColumn(name="b_id")}
)
@ManyToMany(cascade = {CascadeType.ALL})
private Set<B> bset = new HashSet<B>();
}
然后(反向关系)
ClassB {
@ManyToMany(mappedBy="bset")
private Set<A> subjects = new HashSet<A>();
}
这将创建的第一个映射A_B但是我不知道如何在Hibernate中创建映射C_AB。我甚至没有A_B的实体(只存在于数据库中),所以我该如何解决这个问题?
任何帮助表示赞赏。
干杯,
JLove
感谢您的答复......我可以问,如果我理解你正确回答。你建议不要使用映射表(我现在有),我应该创建一个新的实体来建立关系模型......这个实体不会只是一个映射实体(就像我已经使用ManyToMany一样?知道,我的桌子确实只是一个地图...我不需要额外的领域。 – JLove 2013-03-11 16:05:17