我是hibernate新手,我不知道如何映射这个简单的Model 使用JPA或Hibernate注释。我尝试建模的是,提供商具有全局评级,并且全局评级实体的标识符与提供商实体的标识符相同(单向 OneToOne),换句话说,我想要拥有外键在实体全局评级中同时为主要和外部,但提供商实体还具有实体全局评级的外键 。这可能吗?
最佳答案
您可以通过@MapsId
注释实现您想要的。
示例:
@Entity
public class Provider{
@Id
@GeneratedValue
private long idProvider;
@OneToOne(cascade=CascadeType.ALL, mappedBy="provider")
private GlobalRating rating;
// Getter & Setter
}
@Entity
public class GlobalRating{
@Id
private long idProvider;
@OneToOne(cascade=CascadeType.ALL)
@MapsId
@JoinColumn(name="idProvider")
private Provider provider;
// Getter & Setter
}
关于java - 如何使用注释映射在 hibernate 中共享相同主键的两个实体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47322306/