以下代碼在 JDK 5.0, Hibernate 2.1, SQL Server 2000 SP3 中測試通過。
第一次使用Hibernate作持久層,感覺使用起來還是比較復雜的,尤其是調試起來很不方便。Hibernate 基於反射的機制雖然很靈活,但明顯給跟蹤代碼制造了障礙,給出的異常信息量也太少。個人感覺其改進的余地還很大,比如Java新增加了Annotation語法後,是否可使用它來定義ORM,而取代hbm.XML的形式。
好了,進入正題。
首先,必須配置數據庫,下面以在數據庫yufan中的操作為例。
CREATE TABLE CUSTOMER(CID INTEGER NOT NULL PRIMARY KEY, USERNAME VARCHAR(12) NOT NULL, PASSWord VARCHAR(12));
然後是一個數據對象,必須為它的每個字段提供讀寫屬性方法,Hibernate 會用反射來檢索。
// Customer.Java
public class Customer {
private int id;
private String username;
private String passWord;
public int getId() {
return id;
}
public String getPassWord() {
return passWord;
}
public String getUsername() {
return username;
}
public void setId(int id) {
this.id = id;
}
public void setPassword(String passWord) {
this.password = passWord;
}
public void setUsername(String username) {
this.username = username;
}
}