Java中使用Hibernate系列之啟動方法學習(第二節)
阿新 • • 發佈:2022-04-29
有了第一節的學習,我們就可以載入和儲存一些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分鐘學習)。