我正在尝试创建涉及2个实体的数据模型:一个实体继承了另一个实体的所有属性。 这两个实体应保存在单独的表中,因为它们都有不同的用途。我创建了以下休眠结构:
@Entity
@Table(name = "PARENT")
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS
public class Parent {
protected String name;
@Id
public String getId() {
return name;
}
}
@Entity
@Table(name = "CHILD")
public class Child extends Parent {
// ...
}
我创建了一个 Child 实体。 当我阅读所有 Parent 实体时,结果将包含我刚刚创建的 Child 条目。 看来创建 Child 实体会导致重复的 Parent 实体,或者替代地,读取 Parent 实体也会返回Child条目。
我如何确保这些实体通过继承关系分别保存和读取?