@Table和@Entity

映射規則:

1. 實體類必須用 @javax.persistence.Entity 進行註解;

2. 必須使用 @javax.persistence.Id 來註解一個主鍵;

3. 實體類必須擁有一個 public 或者 protected 的無參構造函數,之外實體類還可以擁有其他的構造函數;

4. 實體類必須是一個頂級類(top-level class)。一個枚舉(enum)或者一個接口(interface)不能被註解爲一個實體;

5. 實體不能是 final 類型的,也不能有 final 類型的方法;

6. 如果實體類的一個實例需要用傳值的方式調用(例如,遠程調用),則這個實體類必須實現(implements)java.io.Serializable 接口。

將一個 POJO 的 Java 類映射成數據庫中的表如此簡單,這主要得益於 Java EE 5種引入的  Configuration by Exception 的理念,這個理念的核心就是容器或者供應商提供一個缺省的規則,在這個規則下程序是可以正確運行的,如果開發人員有特殊的需求,需要改變這個默認的規則,那麼就是對默認規則來說就是一個異常(Exception)。

如上例所示:默認的映射規則就是數據庫表的名字和對應的 Java 類的名字相同,表中列的名字和 Java 類中相對應的字段的名字相同。

現在我們可以改變這種默認的規則:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章