spring - 如何在 hibernate 中为自身实体添加@onetoone 映射

标签 spring hibernate hibernate-mapping hibernate-annotations

如何为自身实体添加一对一映射。就像在这个例子中一样。我想为 Person 本身建立父子关系。

@Entity
@Table(name="PERSON")
public class Person {

@Id
@Column(name="personId")
private int id;

@OneToOne
@JoinColumn()
private Person parentPerson;
}

最佳答案

这里是双向自映射的例子@OneToOne(我把列名改成SQL符号):

@Entity
@Table(name="PERSON")
public class Person {

    @Id
    @Column(name="person_id")
    private int id;

    @OneToOne
    @JoinColumn(name = "parent_person_id")
    private Person parentPerson;

    @OneToOne(mappedBy = "parentPerson")
    private Person childPerson;
}

但是,我不明白你为什么要在这种情况下使用 @OneToOne

关于spring - 如何在 hibernate 中为自身实体添加@onetoone 映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18487070/

相关文章:

java - HQL,我可以参数化 FROM 子句吗?

java - JPA - 可选列

database - 如何在 grails 域类中调整 Map 的约束/DB 映射

java - JSP 页面模板

java - 我的 JSP 页面未从数据库获取数据。我应该做什么来改善这个?

Spring云配置服务器: configure git pull interval

spring - @value 注解在 Spring 中是如何工作的?

hibernate - 来自 Hibernate Criteria API 的 LIKE 限制

java - hibernate 映射<键,设置<值>>

java - Hibernate - 从注释到 hbm.xml 的级联类型