JPA - 包括没有id列的实体

问题描述:

我有一个包含2个表的数据库:House and Cottage。每个表都有一个ID列,其中包含主要关键字。 Cottage表中有一列“HouseID”,它包含House记录的外键。JPA - 包括没有id列的实体

现在,在我的House实体类中,我需要包含Cottage对象。

如何注释House实体类中的Cottage对象以包含信息。我需要在Cottage实体类中添加其他注释吗?

这是否足够?

@OneToOne(fetch = FetchType.EAGER) 
private Cottage cottage; 

House表不包含Cottage表的外键。

感谢名单

您应该添加@JoinColumn众议院实体

@OneToOne(fetch = FetchType.EAGER) 
@JoinColumn(name="HouseID") 
private Cottage cottage; 

应该是引用的表列的名称

您需要定义与@JoinColumn注释外键:

@OneToOne(fetch = FetchType.EAGER) 
@JoinColumn(name = "HOUSE_ID") 
private Cottage cottage; 

"HOUSE_ID"是DB列,而不是Java属性的实际名称。