我有一个类似于以下内容的数据库表:
Person
ID | ParentID | Name
每个人都有一个父母(只有 1 个)。每个人可能有 N 个孩子。
我的问题是如何使用 JPA 1 和 Hibernate 在实体中正确映射它。我的目标是只有 1 个 Java 对象(我的祖父母),其中的所有子对象都正确填充。当我坚持我的祖父母时,我希望所有孩子也能正确坚持。
我目前实现的是这样的:
@ManyToOne()
@JoinColumn(name="PARENTID")
private Person parent;
@OneToMany(mappedBy = "parent", fetch = FetchType.LAZY, cascade = CascadeType.ALL)
private List<Person> children;
当我坚持我的祖父母时,每个人都被正确地添加到我的数据库中,但 PARENTID 列是 NULL,这是不正确的。
如何正确映射它以便 JPA/Hibernate 正确设置 PARENTID?