我正在尝试完成以下(非常牵强的)示例:
我有两个表A和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和C的实体...
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