Jpa与具有额外列的同一实体的多对多关系

时间:2012-03-28 18:11:45

标签: java hibernate jpa

我面临以下问题:

public class Person {

    private long id;
    private String name;
    private List<Relation> relations;
    ....
}

public class Relation {

     private Person person;
     private Person relatedWith;
     private String relationType;
}

目标是使用JPA注释这些类,这样任何给定的人都可以与任何其他人建立关系。(因此很多) 关系表应具有由person.idrelatedWith.id组成的组合主键。

我该怎么做? 谢谢你的帮助! 理查德

1 个答案:

答案 0 :(得分:1)

您不应该使用组合主键,使用生成的主键(例如,Relation表的序列或自动增量列),然后您将有两个外键返回到Person表。