所以我有一个实体,该实体与表中的现有数据库具有一对一的关系。但是,我要映射到的字段不是主键。 我该如何实现?我要在下面添加什么?
@Entity
public class MyEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@OneToOne
private Long otherTableField;
}
答案 0 :(得分:0)
您需要使用@JoinColumn
明确指定referencedColumnName
:
@OneToOne
@JoinColumn(name = "other_table_non_primary_id", referencedColumnName= "non_primary_id"
private OtherTable otherTableField;
此外,类型必须为OtherTable
而不是Long。