2013-08-19 94 views
0

您好我是Hibernate的新手。我有個疑問。 我有一個表用戶。列是名稱,年齡和位置。 所以我的POJO類會是這樣的:休眠類Pojo類

@Entity 
@Table(name = "User") 
public class User { 

    @Id 
    private int Age; 
    private String Location; 
    private String Name; 
//Getters and setters methods 

現在我可以有另一種靜態的聲明(工資是不是在表中的字段)

private int salary; 

會冬眠假設,即使工資爲列在表格中用戶? POJO類在休眠中的功能究竟是什麼?

回答

2

是的,所有的文件默認都是持久的。如果你想有一個字段是不是persistet,你需要@Transient進行註解:

@Transient 
private int salary; 

當然,每次Hibernate會從數據庫中加載用戶,薪水都會有一個默認值(0 ,或者在User的無參數構造函數中設置的那個)。

請尊重Java命名約定:字段以小寫字母開頭。另外,使用用戶的年齡作爲它的ID並沒有多大意義:幾個用戶可能會有相同的年齡,並且年齡是可變的值。

究竟是什麼POJO類在休眠的功能?

那麼,這就是Hibernate的定義:它是一個ORM,它將數據庫表映射到Java對象。 Hibernate有一個很好的文檔。閱讀。