1. 程式人生 > 其它 >Java中使用Hibernate系列之啟動方法學習(第二節)

Java中使用Hibernate系列之啟動方法學習(第二節)

有了第一節的學習,我們就可以載入和儲存一些Event物件了,但在載入和儲存前需要一些基本的設定來啟動Hibernate,在Hibernate啟動過程中包括要建立一個全域性的SessoinFactory,並把它儲存在應用程式程式碼容易訪問的地方;SessionFactory可以建立並開啟新的Session;一個Session代表一個單執行緒的單元操作,SessionFactory則是個執行緒安全的全域性物件,只需要被例項化一次。

網路配圖

我們將建立一個HibernateUtil輔助類(helper class)來負責啟動Hibernate和更方便地操作SessionFactory。

程式碼實現如下:

package util;
import org.hibernate.*;
import org.hibernate.cfg.*;
public class HibernateUtil {
private static final SessionFactory sessionFactory;
static {
try {
// 建立一個 SessionFactory
sessionFactory = new Configuration().configure().buildSessionFactory();
} catch (Throwable ex) {
throw new ExceptionInInitializerError(ex);
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}

網路配圖

這個類是在它的靜態初始化過程(僅當載入這個類的時候被JVM執行一次)中產生全域性的SessionFactory。把HibernateUtil.java放在開發目錄的原始碼路徑下,為方便使用要與放events的包並列:

.

+lib

<Hibernate and third-party libraries>

+src

+events

Event.java

Event.hbm.xml

+util

HibernateUtil.java

hibernate.cfg.xml

+data

網路配圖

好了,這一節的學習先到這裡,後面章節中會繼續學習Hibernate。我們學習方式是每一節學習一個知識點(每天花10分鐘學習)。