hibernate one to one

 hibernate 注解配置一对一

例如:User和UserInto,先有user后有userInfo,相当于user是父,userInfo是子

这时我们需要在父类(User)中加上

@OneToOne(optional = true, cascade = CascadeType.ALL, mappedBy = "user")
private UserInfo userInfo;


而子类(UserInfo)中

@OneToOne(optional = false, cascade = CascadeType.REFRESH)
@JoinColumn(name = "id", referencedColumnName = "pid", unique = true)
private User user;


hibernate @OneToOne注释指明User与userInfo为一对一关系,

1.mappedBy = "user":意思是说这里的一对一配置参考了user,user是UserInfo类中的getUser(),注意不是User类中的

2. userInfo是关系被维护端,optional = false设置person属性值不能为null,也就是userInfo必须有对应的父。
3.@JoinColumn(name = "id", referencedColumnName ="pid",unique = true), name对父类的id

你可能感兴趣的:(hibernate one to one)