2016-04-04 41 views
1

在Hibernate中,字段聲明本身Hibernate的註解 - 字段聲明之前或之前消氣二傳手

@Id 
private int id; 

其getter和setter之前和之前放置有@Id註釋

@Id 
public int getId() { return this.id; } 
public int setId(..) { .. } 

兩個不同的東西。如果在getter/setter中有一些處理,這個區別會生效。

問題是,非關鍵字段是否存在這樣的問題 - 那些沒有@Id註釋的問題?

我的關鍵字段沒有任何處理。但是,在其他人中,我有一些字段可以在設置之前驗證/更改值。對於這些領域,我應該把註釋放在他們的getters-setters之前嗎?

據我所知,我沒有撞到一堵磚牆。但是 - 想確認。

TIA。

注意:看到有用的討論:Where to put hibernate annotations?

回答

0

對於非關鍵字段沒有問題,但是我個人更喜歡字段註釋,特別是如果您不必在實體級別上執行一些業務邏輯:代碼更乾淨,所有與數據庫相關的東西都在類,你不會有等號方法的奇怪問題(它總是使用字段 - 它發生在我身上),再加上,如果你有其他方法沒有嚴格相關的數據庫處理,你必須設置它們@Transient