回答

0

在Hibernate執行數據庫操作時,我們需要與數據庫連接。要打開與數據庫的連接,我們需要在hibernate中創建會話對象,爲了獲得Session對象,我們需要Hibernate SessionFactory,這是工廠類,通過它我們獲得會話並執行數據庫操作。 Hibernate SessionFactory提供了三種方法,通過它們可以獲得Session對象 - getCurrentSession(),openSession()和openStatelessSession()。

Hibernate SessionFactory getCurrentSession()方法返回綁定到上下文的會話。但爲了這個工作,我們需要在休眠配置文件中配置它。

+0

感謝您的回答。我知道要管理會話,我們使用會話工廠。但是爲什麼我們使用兩次第一個裏面的配置文件標籤第二個在main類裏面,同時創建會話工廠對象。那麼在配置文件中使用這個標籤是什麼? –

1

在Hibernate中SessionFactory用於管理會話和交易與數據庫,因爲你可以在documentation看到:

這裏的主要合同是創建Session實例的。通常,應用程序具有單個SessionFactory實例服務於客戶端請求的線程從此工廠獲取會話實例

SessionFactory的內部狀態是不可變的。一旦創建了這個內部狀態 被設置。該內部狀態包括關於對象/關係映射的元數據的所有 。

編輯:

在XML配置文件中的<session factory>標籤用於配置初始化對Hibernate會話工廠設置,如Dialect類和連接Driver類的屬性,你可以在Hibernate - ConfigurationXML配置文件必須符合Hibernate 3 Configuration DTD

雖然我們在類中使用的sessionFactory實例用於管理每個數據庫事務的會話,但您可以在jBossDeveloper's Sessions and transactions tutorial中找到有關它的更多詳細信息。

+0

感謝您的回答。 我知道要管理會話,我們使用會話工廠。 但是我們爲什麼要用兩次 首先在裏面配置文件標籤 第二個裏面的main類,在創建會話工廠對象時。 然後 這個標籤在配置文件中有什麼用處? –

+0

@Nilay看看我的編輯。 –

+0

非常感謝您的回答。 –