(Id、Name、EmployeeType)を持つEmployeeエンティティクラスがあります。 EmployeeTypeエンティティ(Id、Description)説明は、REGULAR/MANAGERのいずれかです。同じエンティティ間で多対多の関係を行う方法
REGULAR型の従業員を対応するMANAGERタイプの従業員にマップする方法が混乱しています。私はEmployeeエンティティ自体に余分なフィールドを追加して、今すぐ(Id、Name、EmployeeType、ManagerEmployeeId)にする必要がありますか?または、代わりに参照テーブルEmployee_Manager(Id、RegularEmployeeId、ManagerEmployeeId)を用意する必要がありますか?
私はEmployee_Managerルックアップテーブルを使用することを検討していますが、そのエンティティクラスの外観はわかりません。以下は私の心に来るものです。私は正しい道にここにいますか?
@Entity
@Table(name="EMPLOYEE")
public class Employee{
@Id
int id;
@Column(name="NAME")
String name;
@ManyToMany(mappedBy = "regularEmployee")
Collection<Employee> regularEmployee
@ManyToMany
Collection<Employee> managerEmployee;
}
ps。私は永続化プロバイダとしてJPAとHibernateを併用しています。