将1个子实体用于2个父实体

时间:2020-09-16 15:10:15

标签: spring spring-data-jpa

model

电话号码是学生和员工的共同实体。如何将电话号码作为公用子实体共享给学生和员工。

1 个答案:

答案 0 :(得分:0)

您要执行的操作是在StudentPhoneNumbers之间建立一对多关系,并在EmployeePhoneNumbers之间建立另一个一对多关系。为此,可以使用批注@OneToMany和@JoinColumn。这是Employee代码的外观:

@Entity
@Table(name="employees")
public class Employee {
    ...

    @OneToMany
    @JoinColumn(name="phone_number_id")
    private List<PhoneNumber> phoneNumbers;

    ...

}

这是单向关联的示例,也有一个双向关联。有关这两种关联的更详细说明,您可以查看this article