hibernate怎樣創建SessionFactory

創建SessionFactory

          首先創建Configuration對象,主要方式是:

[java] view plaincopy
  1. new Configuration().configure()  

默認情況下Hibernate會去classPath下加載hibernate.cfg.xml文件,如果你沒有采用默認的配置文件名,那麼你就需要在configurate()方法裏面帶上你的配置文件名,如aa.xml。注意路徑正確。


      接着,就是創建SessionFacotry. 那麼在以前的版本中,通常我們創建的方式是:configure.buildSessionFactory(); 但是在4.0之後的版本中,這種方式已經不被推薦了,那麼官方推薦的做法是什麼列?

[java] view plaincopy
  1. StandardServiceRegistryBuilder serviceRegistryBuilder = new StandardServiceRegistryBuilder();  
  2.   ServiceRegistry serviceRegistry = serviceRegistryBuilder.build();  
  3.   SessionFactory sf = configuration.buildSessionFactory(serviceRegistry);  

這是Hibernate4.0之後引入的新特性,Service Register機制   。關於這塊的介紹,內容太多,我不想貼過來了,給一個鏈接,有興趣的朋友可以自己去看。

Service Register機制介紹http://planet.jboss.org/post/hibernate_orm_service_registry


但是緊接着在4.1之後的版本中,StandardServiceRegistryBuilder又被取消了,取而帶之的做法是

[java] view plaincopy
  1. Configuration configiguration = new Configuration().configure();  
  2.         ServiceRegistryBuilder builder = new ServiceRegistryBuilder().applySettings(configiguration.getProperties());  
  3.         ServiceRegistry registry = builder.buildServiceRegistry();   
  4.         factory = configiguration.buildSessionFactory(registry);  



關於Hibernate的配置項,在此不一一舉列,請參見Hibernate的官方文檔,具體路徑是:documentation\manual\en-US\html\ch03.html


上面有很詳細的介紹,必配置與選備,都有。



ps:其實SessionFactory的創建方式非常多,這點可以從官方文檔中看出,由於我們最常用的還是以上的XML方式,所以本文只講述這種方式

發佈了26 篇原創文章 · 獲贊 19 · 訪問量 47萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章