自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

淺談定制Hibernate映射

開發(fā) 后端
這里介紹定制Hibernate映射,也可以使用其他圖和列的屬性來定制Hibernate映射。這使您可以指定諸如列長度、非空約束等詳細內容。

在向大家詳細介紹定制Hibernate映射之前,首先讓大家了解下Hibernate自動生成主鍵,然后全面介紹定制Hibernate映射。

Hibernate 能夠出色地自動生成主鍵。Hibernate/EBJ 3 注釋也可以為主鍵的自動生成提供豐富的支持,允許實現(xiàn)各種策略。下面的示例說明了一種常用的方法,其中Hibernate將會根據(jù)底層數(shù)據(jù)庫來確定一種恰當?shù)逆I生成策略:

  1. public Long getId() {  
  2. return id;  
  3. }  

定制Hibernate映射

默認情況下,Hibernate會將持久類以匹配的名稱映射到表和字段中。例如,前一個類可以與映射到以如下代碼創(chuàng)建的表中:

  1. CREATE TABLE MODELPLANE   
  2. (  
  3. ID long,  
  4. NAME varchar  

如果您是自己生成并維護數(shù)據(jù)庫,那么這種方法很有效,通過省略代碼可以大大簡化代碼維護。然而,這并不能滿足所有人的需求。有些應用程序需要訪問外部數(shù)據(jù)庫,而另一些可能需要遵從公司的數(shù)據(jù)庫命名慣例。如果有必要,您可以使用 @Table 和 @Column 注釋來定制您自己的持久性映射,如下所示:

  1. public class ModelPlane {  
  2. private Long id;  
  3. private String name;  
  4. @Id  
  5. @Column(name="PLANE_ID")  
  6. public Long getId() {  
  7. return id;  
  8. }  
  9. public void setId(Long id) {  
  10. this.id = id;  
  11. }  
  12. @Column(name="PLANE_NAME")   
  13. public String getName() {  
  14. return name;  
  15. }  
  16. public void setName(String name) {  
  17. this.name = name;  
  18. }  
  19. }  

該內容將映射到下表中:

  1. CREATE TABLE T_MODEL_PLANE   
  2. (  
  3. PLANE_ID long,  
  4. PLANE_NAME varchar  
  5. )  

也可以使用其他圖和列的屬性來定制Hibernate映射。這使您可以指定諸如列長度、非空約束等詳細內容。Hibernate支持大量針對這些注釋的屬性。下例中就包含了幾種屬性:

  1. ...  
  2. @Column(name="PLANE_ID"length=80nullable=true)  
  3. public String getName() {  
  4. return name;  
  5. }  
  6. ...  

【編輯推薦】

  1. 獲取Hibernate關聯(lián)關系的方法
  2. 詳細講述Hibernate綁定JNDI
  3. Hibernate Customer客戶對象
  4. 講述Hibernate Session緩存
  5. 簡單分析Hibernate讀取Clob
責任編輯:佚名 來源: 博客園
相關推薦

2012-02-02 16:13:29

HibernateJava

2009-09-21 13:05:18

Hibernate u

2009-09-23 17:07:31

Hibernate C

2009-09-28 15:47:59

Hibernate O

2020-05-20 13:05:41

定制化服務器

2009-09-25 10:53:40

Hibernate S

2009-09-22 10:09:21

Hibernate S

2009-09-29 10:46:58

Hibernate領域

2009-09-23 17:34:18

Hibernate映射

2009-09-25 10:00:47

Hibernate映射

2012-02-03 10:07:04

HibernateJava

2012-02-03 11:17:33

HibernateJava

2009-09-22 15:10:22

Hibernate映射

2009-09-28 13:43:28

使用Hibernate

2009-06-02 14:46:26

Hibernate關系映射教程

2009-09-22 13:41:10

直接使用Hiberna

2009-09-28 13:39:01

Hibernate工作

2009-09-25 12:59:52

Hibernate映射

2009-09-29 15:58:22

Hibernate映射

2009-09-25 09:46:02

Hibernate高級
點贊
收藏

51CTO技術棧公眾號