天天看點

Hibernate Annotation mappedBy注解了解

在Annotation 中有這麼一個@mappedBy 屬性注解,相信有些同學還是對這個屬性有些迷惑,上網找了些了解@mappedBy比較深刻的資料,下面貼出來供大家參考。

http://xiaoruanjian.iteye.com/blog/1094253

http://blog.csdn.net/gabriel80/article/details/4260923

看完資料後,我自己也總結了下,。

[email protected] 屬性簡單了解為 設定為主表(這隻是我個人了解,上面文章中也有提到過)

是以另一端則需要設定外鍵@JoinColumn(name="fk_id")

[email protected] 注解下傳回Set集合(列如:上帝可以有多個信徒)。

[email protected] 注解下 設定外鍵 根據 外鍵擷取到主表對象隻能擷取到一個對象(列如:信徒隻能有一個上帝)。

主表(God)

Java代碼  

Hibernate Annotation mappedBy注解了解
  1. private Set believer= new HashSet(0);  
  2.     public void setBeliever(Set<Believer> believer){  
  3.         this.believer= believer;  
  4.     }  
  5.     @OneToMany(cascade = { CascadeType.MERGE }, fetch = FetchType.LAZY, mappedBy = "God")  
  6.     public Set<Believer> getBeliever() {  
  7.         return believer;  
  8.     }  

從表(Believer)

Java代碼  

Hibernate Annotation mappedBy注解了解
  1. private God god;  
  2.     public void setGod(God god){  
  3.         this.god= god;  
  4.     }  
  5.     @ManyToOne(cascade = {}, fetch = FetchType.LAZY)  
  6.     @JoinColumns({  
  7.         @JoinColumn(name = "godid",nullable = false, insertable = false, updatable = false)   
  8.     })  
  9.     public God getGod() {  
  10.         return god;  
  11.     }  

這裡我隻是我自己的了解,上面兩個連結說的很詳細,希望大家能給出一些寶貴建議!謝謝!

繼續閱讀