hibernate 事務機制

2021-09-01 20:14:25 字數 1337 閱讀 3933

資料庫事務的定義

事務是指一組相互信賴的操作行為。這些操作要麼必須全部成功,要麼必須全部失敗,以保證資料的一致性和完整性。

資料庫事務是對現實生活中事務的模擬,它由一組在業務邏輯上相互信賴的sql語句組成。

資料庫事務的acid屬性

原子性

(atomic)

指整個資料庫事務是不可分割的工作單元。原子性確保在事務中的所有操作要麼都發生,要麼都不發生。

一致性(consistency)

一旦乙個事務結束了(不管成功與否),系統所處的狀態和它的業務規則是一致的。即資料應當不會被破壞。

隔離性

(isolation)

指多個事務同時操作同一資料時,每個事務都有各自的完整資料空間。

永續性(durability)

一旦事務完成,事務的結果應該持久化。

jdbc宣告事務

connection con = null;

preparedstatement pstmt = null;

trycatch(exception e) finally

hibernate 事務

1、如果hibernat持久層執行在乙個非託管環境中,可以在hibernate配置檔案 hibernate.cfg.xml中指定:

org.hibernate.transaction.jdbctransactionfactory

transaction tx = null;

try catch (runtimeexception e) finally

注:

2、hibernat持久層執行在乙個託管環境中,可以配置使用jta :

org.hibernate.transaction.jtatransactionfactory

// bmt(bean管理事務) 

usertransaction tx = null;

try catch (runtimeexception e)

注:在cmt(容器管理事務)方式下,事務宣告是在session bean的部署描述符中,而不需要程式設計。

hibernate事務簡介

資料庫的事務如果控制不好,很容易導致資料出現髒讀,不可重複讀,幻讀,這樣就會造成資料的混亂,那怎麼弄呢?利用資料庫事務的隔離級別進行控制就可以了 hibernate隔離級別有 1 read uncommitted isolation 2 read committed isolation 4 repe...

HIbernate 事務特性

1.原子性 atomicity 事務的原子性是指事務中包含的所有操作要麼全做,要麼全不做 all or none 2.一致性 consistency 在事務開始以前,資料庫處於一致性的狀態,事務結束後,資料庫也必須處於一致性狀態。拿銀行轉賬來說,一致性要求事務的執行不應改變a b 兩個賬戶的金額總和...

Hibernate事務屬性

事務也是 hibernate 持久層訪問的重要方面,hibernate 不僅提供了區域性事務支援,也允許使用容器管理的全域性事務。hibernate 關於事務管理的屬性有如下幾個。hibernate.transaction.factory class 指定hibernate 所用的事務工廠的型別,該...