(1)
單線程、短命的對象代表壹個對話的過程。事實上,這是為了放壹個JDBC
關系
包
現在,它可以被視為數據連接和事務管理之間的中間接口。
存在
冬眠
他們將會話視為數據連接和事務管理之間的中間接口,或者將其想象為持久對象的緩沖區。
Hibernate可以檢測到這些持久對象的變化,及時刷新數據庫。
(2)
每個會話實例和壹個
數據庫事務
約束
通常,每個會話實例都綁定到壹個數據處理庫事務。
也就是說,每個數據庫事務(操作)都要執行,首先要創建壹個新的會話實例。
如果交易執行中出現異常,則應取消交易。
無論事務執行成功與否,最後都要調用Session的close()方法,從而釋放Session實例占用的資源。
(3)
如何獲得
會話對象
首先創建壹個SessionFactory對象。
應用服務器
如果訪問多個數據源,應該生成多個SessionFactory
但是僅僅為了服務壹個請求,不要創建壹個新的SessionFactory,因為它會消耗很多資源。
然後根據SessionFactory創建會話對象。