Hibernate 通过JPA中的另一个实体更改联接表
我有三张桌子:Person、Phone和Person\u Phone。Person_Phone可连接Person和Phone表 这三个表都有一个主键.postgresql序列。我想使用JPA或hibernate注释来映射它。我知道使用@JoinTable映射此关系 但问题是,在插入数据时,jpa无法为Person_PhoneJoin表生成序列 我怎样才能实现它 以下是表格结构Hibernate 通过JPA中的另一个实体更改联接表,hibernate,postgresql,Hibernate,Postgresql,我有三张桌子:Person、Phone和Person\u Phone。Person_Phone可连接Person和Phone表 这三个表都有一个主键.postgresql序列。我想使用JPA或hibernate注释来映射它。我知道使用@JoinTable映射此关系 但问题是,在插入数据时,jpa无法为Person_PhoneJoin表生成序列 我怎样才能实现它 以下是表格结构 Person ------------- personID(PK) personName ..... 电话桌: Pho
Person
-------------
personID(PK)
personName
.....
电话桌:
Phone
--------
phoneID
phoneNumber
Person_Phone
-----------------
id(PK)
personID(FK)
phoneID(FK)
个人电话号码:
Phone
--------
phoneID
phoneNumber
Person_Phone
-----------------
id(PK)
personID(FK)
phoneID(FK)
简短回答:联接表不需要序列。移除它 稍长一点的回答: 常规联接表有一个复合主键,该主键由联接实体的ID组成,在本例中为personID和phoneID
从表定义中删除id列,或者让hibernate为您生成表定义,并根据需要调整这些定义。到目前为止,映射看起来还可以。在电话实体中是否有个人字段?请添加它,并在您尝试添加实体的地方添加代码,并准确描述出错的地方。对不起,kostja。我修改了问题,请检查一下。