主鍵中mappedBy的具體使用及…

zhengdesheng19930211發表於2017-03-21
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這個屬性,則會產生三張表,一張表是用來管理這兩張表的,如[轉載]主鍵中mappedBy的具體使用及其含義

3、mappedBy這個屬性在OneToMany或者ManyToOne屬性中,只在OneToMany才有,才能定義。

相關文章