如何覆盖JPA实体id列?
我为我的所有实体使用一个基本实体类。它映射到包含所有实体共享的列的表如何覆盖JPA实体id列?,jpa,Jpa,我为我的所有实体使用一个基本实体类。它映射到包含所有实体共享的列的表 @Entity @Inheritance(strategy=InheritanceType.JOINED) @DiscriminatorColumn(name="entpcd", discriminatorType=DiscriminatorType.STRING) @Table(name="enrg") public abstract class BaseEntity @Id @Column(name="enid")
@Entity
@Inheritance(strategy=InheritanceType.JOINED)
@DiscriminatorColumn(name="entpcd", discriminatorType=DiscriminatorType.STRING)
@Table(name="enrg")
public abstract class BaseEntity
@Id
@Column(name="enid")
private String entityId=null;
我有一个实体类,它代表一个人,映射到它自己的表
@Entity
@DiscriminatorValue("PN")
@Table(name="pn")
public class Person extends BaseEntity
ENRG表格结构
enid, col2, col3
pnid, col2 col3
PN表结构
enid, col2, col3
pnid, col2 col3
在检索人员时,Hibernate在
enrg.enid=pn.enid
上尝试加入时失败。如何亲自覆盖id映射,让Hibernate加入enrg.enid=pn.pnid
?@PrimaryKeyJoinColumn(name=“pnid”)
解决了这个问题
据我所知,Hibernate在id列上存在@AttributeOverride
问题。更多->