@Entity
@Table(name = "Person")
public class Person {
@Id
private Long id;
private String firstName;
private String lastName;
@ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name="address_id", referencedColumnName="id")
private Address address;
@ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name="mother", referencedColumnName="id")
private Person mother;
@ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name="father", referencedColumnName="id")
private Person father;
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@Formula(value="(SELECT DISTINCT FROM PERSON as p WHERE p.father=id OR p.mother=id)")
private Collection<Person> children;
//...
}
问候Stackoverflow的人!
我刚开始使用Spring和JPA。
基本上你可以看到一个名为Person的实体,我在其中定义了以下属性,如id,firstName,secondName,person's father,person's mother和person's children。没有添加getter / setter到帖子。
我的第一个问题是,是否可以通过公式创建数据集合?在某个地方,我听说这是不可能的,互联网基本上没有所需规格的数据,这就是我创建这个主题的原因。
第二个问题,如果不可能,那么在没有公式的情况下描述以下情况的最佳方法是什么?问题在于具有母亲/父亲价值观的儿童之间的联系。基本上,最终结果应该是JPA进行数据绑定。