父实体在单向一对一关系休眠中作为所有者

时间:2018-08-10 22:45:02

标签: java hibernate jpa one-to-one

请考虑以下数据库模型:

enter image description here

在数据模型中,我有两个共享相同主键的表,强实体是Account,弱实体是User(用户拖动了账户的PK)。请记住以下几点:是否可以使帐户实体在帐户与用户之间的唯一关系中成为所有者实体?如果可能的话,映射将如何,否则为什么不可能?

非常感谢!

1 个答案:

答案 0 :(得分:0)

您可以使用@PrimaryKeyJoinColumn进行操作:

@Entity
public class Account {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    @OneToOne(cascade = CascadeType.ALL, mappedBy = "account")
    @PrimaryKeyJoinColumn
    private User user;
    ...
}

用户表:

@Entity
public class User {
    @Id
    private Long id;
    private String name;
    .....
}

查看this以获得详细信息。