Spring Data JPA中的mappedBy

 

 
 

   mappedBy单向关系不需要设置该属性,双向关系必须设置,避免双方都建立外键字段   

  数据库中一对多的关系,关联关系总是被多方维护的即外键建在多方,我们在单方对象的@OneToMany(mappedBy="xxx")

 

 mappedBy 单向关系不需要设置该属性,双向关系必须设置,避免双方都建立外键字段

  数据库中一对多的关系,关联关系总是被多方维护的即外键建在多方,我们在单方对象的@OneToMany(mappedby="xxx ")

  把关系的维护交给多方对象的属性去维护关系

  对于mappedBy用法:

  a) 只有OneToOne,OneToMany,ManyToMany上才有mappedBy属性,ManyToOne不存在该属性;

  b) mappedBy标签一定是定义在the owned side(被拥有方的),他指向theowning side(拥有方);

  c) 关系的拥有方负责关系的维护,在拥有方建立外键。所以用到@JoinColumn

  d)mappedBy跟JoinColumn/JoinTable总是处于互斥的一方

  

猜你喜欢

转载自www.cnblogs.com/yangzhixue/p/12433467.html