复合键在Hibernate中有两个多对一键

时间:2012-01-24 16:05:37

标签: java xml eclipse hibernate map

我上了3节课。 Class 1 + 2只是带有id的空类。

第3类有2个属性:

private long id;  <---- DO I NEED THIS???  
private Class1 abc;  
private Class2 cde;

这些都是多对一的,应该一起定义这个类的关键,例如 没有2个class3实例,其中abc = abc和cde = cde。 我试过这样的话:

<composite-id name="id" class="class3">     
    <key-property name="abc" column="ID_CLASS1"/>
    <key-property name="cde" column="ID_CLASS2" />          
</composite-id>

这并不反映多对一关系,也不会编译!

有人可以发布一个适用于我的特殊情况的映射吗? 我阅读了所有文档,但不能只是弄明白! 非常感谢。

1 个答案:

答案 0 :(得分:1)

所以,你有两个tablew A和B,以及A和B之间的连接表。因此你可能在A和B之间有一个ManyToMany关联。因此你不应该在这个表中有一个ID,你不应该映射它作为一个实体。

使用ManyToMany关联,如the reference manual中所述。