mappedBy用于指定在双向关系中两个实体中被哪个实体是被关联处理的
1、@OneToMany(mapped=“由One的一方指向Many的一方,并且,这个属性应该等于Many的一方中含有One类的属性的属性名,否则会出错啦 ”)
如:
在ClassPO中:
@OneToMany(targetEntity=StudentPO.class,mappedBy="myclass",cascade=javax.persistence.CascadeType.ALL)
@Cascade(CascadeType.ALL)
private Set<StudentPO> studentSet;
在StudentPOst中:
@ManyToOne(targetEntity=ClassPO.class,cascade={CascadeType.ALL})
private ClassPO myclass;
其中ClassPO中的mappedBy= StudentPOst中的 myclass;
2、如果我们没有填mapped这个属性,则会产生三张表,一张表是用来管理这两张表的,如
3、mappedBy这个属性在OneToMany或者ManyToOne属性中,只在OneToMany才有,才能定义。
来源于: