spring 中的事務管理

2021-08-17 21:32:00 字數 796 閱讀 7411

事務:原子性,一致性,隔離性,永續性。

一致性就是最終目標,保證正確。

資料併發問題:

髒讀:a事務更改資料未提交,b事務讀取

不可重複讀:a事務讀取的過程中,b事務修改資料,兩次讀的同乙個值不一樣。(修改或者刪除)

幻象讀:和不可重複讀類似,這次是新增

第一類丟失更新:a提交,b提交,回滾破壞了資料。

第二類丟失:a提交,b 提交,覆蓋了資料。

資料庫鎖:表鎖定,行鎖定,又可以分為共享鎖定,和獨佔鎖定。

事務隔離級別:

read uncommited 第一類丟失

read committed 髒讀,第一類丟失。

repeatable read

serializable

隔離級別和併發性是對立的。

提交,回滾,設定回滾點。

spring對事物管理的支援:

transactiondefinition:定義事務隔離,事務傳播,事務超時,唯讀狀態。等配置屬性。

platformtransactionmanager:可以根據配置,產生事務。事務管理器介面

transacitionstatus:代表事務的具體執行狀態

spring將事務管理委託給底層具體的持久化實現框架來完成

不同的持久化框架有不同事務管理器實現類。implement platformtransactionmanager

事務同步管理器:使用threadlocal實現執行緒安全

事務傳播行為:

乙個@transaction 就可以搞定。

Spring中事務管理

spring提供的事務管理可以分為兩類 程式設計式的和宣告式的。程式設計式的,比較靈活,但是 量大,存在重複的 比較多 宣告式的比程式設計式的更靈活。傳統使用jdbc的事務管理 以往使用jdbc進行資料操作,使用datasource,從資料來源中得到connection,我們知道資料來源是執行緒安全...

Spring中事務管理

一 事務 1.事務邏輯上的一組操作,組成這組操作的各個邏輯單元,要麼一起成功,要麼一起失敗 2.事務特性 1 原子性 強調事務的不可分割 2 一致性 事務的執行的前後資料的完整性保持一致 3 隔離性 乙個事務執行過程中,不應該收到其他事務的干擾 4 永續性 事務一旦結束,資料就持久到資料庫中 3.事...

spring中的事務管理

一 簡單介紹 spring中的事務管理主要是用來管理對資料庫進行操作的事務,一般是應用於service層。分為幾種 1.程式設計式事務管理 如jdbc中設定取消資料庫的自動提交功能 conn datasource.getconnection conn.setautocommit false 此處表示...