資料庫事務的定義
事務是指一組相互信賴的操作行為。這些操作要麼必須全部成功,要麼必須全部失敗,以保證資料的一致性和完整性。
資料庫事務是對現實生活中事務的模擬,它由一組在業務邏輯上相互信賴的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 所用的事務工廠的型別,該...