具有相同类的父子项的 JPA 映射
2022-09-02 12:53:43
我有下表:
FOLDER[
id int,
name varchar2(10),
parent_folder_id int
]
我希望 Folder 类具有父子关系。
我有下表:
FOLDER[
id int,
name varchar2(10),
parent_folder_id int
]
我希望 Folder 类具有父子关系。
我相信正确的映射是:
@Entity
public class Folder {
@Id
@Column(name="PK_FOLDER")
private int id;
@Column(name="NAME")
private String name;
@ManyToOne
@JoinColumn(name="FK_PARENT_FOLDER")
public Folder parentFolder;
@OneToMany(mappedBy="parentFolder")
public List<Folder> subFolders = new ArrayList<Folder>();
}
只有当每个父级最多有一个孩子时,它才有效,上面的代码适用于更一般的情况,当一个父母可以有多个孩子时。另外,为了简单起见,我省略了 get/set 方法。@OneToOne