1. 程式人生 > >五大核心介面

五大核心介面

如果需要更詳細的請訪問官方文件本文適合初學者們

五大核心介面

Api詳見:documentation/orm/5.0/javadocs/index.html

 ServiceRegistry / Configure介面:

所有基於 Hibernate 的配置或者服務都必須統一向這個 ServiceRegistry  註冊後才能生效。取代了Configuration介面。

 

 SessionFactory介面:

能夠初始化Hibernate,充當資料儲存源的代理,並能夠建立session物件。

針對單個數據庫對映關係經過編譯後的記憶體映象,是執行緒安全的。

SessionFactory 物件一旦構造完畢,即被賦予特定的配置資訊

SessionFactory是生成Session的工廠

構造 SessionFactory 很消耗資源,一般情況下一個應用中只初始化一個 SessionFactory 物件。

Session介面:

Session 是應用程式與資料庫之間互動操作的一個單執行緒物件,是 Hibernate 運作的中心,所有持久化物件必須在 session 的管理下才可以進行持久化操作。此物件的生命週期很短。Session 物件有一個一級快取,顯式執行 flush 之前,所有的持久層操作的資料都快取在 session 物件處。相當於 JDBC 中的 Connection。

持久化類與 Session 關聯起來後就具有了持久化的能力。

Session 類的方法:

取得持久化物件的方法: get() load()

持久化物件都得儲存,更新和刪除:

save(),update(),saveOrUpdate(),delete()

開啟事務: beginTransaction().

管理 Session 的方法:isOpen(),flush(), clear(), evict(), close()等

 

Transation介面:

代表一次原子操作,它具有資料庫事務的概念。所有持久層都應該在事務管理下進行,即使是隻讀操作。

  Transaction tx = session.beginTransaction();

常用方法:

commit():提交相關聯的session例項

rollback():撤銷事務操作

wasCommitted():檢查事務是否提交

 

QueryCriteria介面:

能夠執行各種資料庫查詢,可使用HQL與SQL二種表達方式。