我想知道如何设置以下关系:
这种关系与用户(实体)相关,其中每个用户可以来自多个组织中的一个。第二个实体用于记录每个用户的组织特定细节(实体)。
每个组织都有自己的实体。
@Entity
public class User
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long Id
private Name name然后,我对每个组织都有几个实体。每个用户需要在以下实体之一中恰好有一个到一个记录的映射:
@Entity
public class EducationUserDetails
@Id
private Long Id
@MapsId
private User user;
private String teacherRegistrationNo
private String teacherSchool
@Entity
public class DoctorUserDetails
@Id
private Long Id
@MapsId
private User user;
private String medicalCouncilNo
private String doctorHospital如何设置/建模此关系?
发布于 2017-06-29 18:10:30
请参阅MapsId documentation。它需要@ManyToOne或@OneToOne关系。
如果您希望使用相同的主键进行一对一映射,那么可以使用@PrimaryKeyJoinColumn。
@PrimaryKeyJoinColumn
@OneToOne
private User user;示例请参阅:https://www.mkyong.com/hibernate/hibernate-one-to-one-relationship-example-annotation/
https://stackoverflow.com/questions/44815382
复制相似问题