Hibernate 持久化類
hibernate 持久化類
hibernate 的完整概念是提取 java 類屬性中的值,并且將它們保存到數(shù)據(jù)庫表單中。
映射文件能夠幫助 hibernate 確定如何從該類中提取值,并將它們映射在表格和相關(guān)域中。
在 hibernate 中,其對象或?qū)嵗龑?huì)被存儲在數(shù)據(jù)庫表單中的 java 類被稱為持久化類。
若該類遵循一些簡單的規(guī)則或者被大家所熟知的 plain old java object (pojo) 編程模型,hibernate 將會(huì)處于其最佳運(yùn)行狀態(tài)。以下所列就是持久化類的主要規(guī)則,然而,在這些規(guī)則中,沒有一條是硬性要求。
- 所有將被持久化的 java 類都需要一個(gè)默認(rèn)的構(gòu)造函數(shù)。
- 為了使對象能夠在 hibernate 和數(shù)據(jù)庫中容易識別,所有類都需要包含一個(gè) id。此屬性映射到數(shù)據(jù)庫表的主鍵列。
- 所有將被持久化的屬性都應(yīng)該聲明為 private,并具有由 javabean 風(fēng)格定義的 getxxx 和 setxxx 方法。
- hibernate 的一個(gè)重要特征為代理,它取決于該持久化類是處于非 final 的,還是處于一個(gè)所有方法都聲明為 public 的接口。
- 所有的類是不可擴(kuò)展或按 ejb 要求實(shí)現(xiàn)的一些特殊的類和接口。
pojo 的名稱用于強(qiáng)調(diào)一個(gè)給定的對象是普通的 java 對象,而不是特殊的對象,尤其不是一個(gè) enterprise javabean。
一個(gè)簡單的 pojo 的例子
基于以上所述規(guī)則,我們能夠定義如下 polo 類:
public class employee { private int id; private string firstname; private string lastname; private int salary; public employee() {} public employee(string fname, string lname, int salary) { this.firstname = fname; this.lastname = lname; this.salary = salary; } public int getid() { return id; } public void setid( int id ) { this.id = id; } public string getfirstname() { return firstname; } public void setfirstname( string first_name ) { this.firstname = first_name; } public string getlastname() { return lastname; } public void setlastname( string last_name ) { this.lastname = last_name; } public int getsalary() { return salary; } public void setsalary( int salary ) { this.salary = salary; } }
相關(guān)文章
- JDBC 教程
- JDBC 驅(qū)動(dòng)類型
- JDBC 連接數(shù)據(jù)庫范例
- JDBC 連接數(shù)據(jù)庫步驟
- JDBC Statement, PreparedStatement 和 CallableStatement
- JDBC ResultSet 結(jié)果集
- JDBC Resultset 結(jié)果集范例
- JDBC 事務(wù)保存點(diǎn)范例
- Scala 教程
- Scala 簡介
- Scala 類和對象
- Scala 文件 I/O
- Spring 教程
- Spring 模塊
- Spring 依賴注入
- Spring 自動(dòng)裝配
- Spring MVC教程
- Spring MVC表單標(biāo)簽庫
- Spring security