例:
張三賬戶餘額1000
此時有a、b事務對張三餘額操作
1. 讀未提交(髒讀):
乙個事務可以讀取到另乙個事務未提交的資料。
a執行+500,此時還未提交,b讀取到餘額1500,購買了1500塊錢的東西,購買成功了
此時a異常回滾
平台損失了500
2. 讀已提交(不可重複讀):
乙個事務可以讀取到另乙個事務已提交的資料。
a執行-500,此時因為a還未提交,b讀取到的還是1000,執行-1000,提交成功
當a提交時發現應沒錢了。
3. 不可重複讀:
記錄加上不可重入鎖,被讀取了後不能被修改
新增的資料無法讀取,會出現幻讀情況
4. 序列化:
事務順序執行
效能下降,無論發生什麼都不會出問題。
spring事務隔離級別
在spring中定義了5中不同的事務隔離級別 1.isolation default 一般情況下使用這種配置既可 這是乙個platfromtransactionmanager預設的隔離級別,使用資料庫預設的事務隔離級別。2.isolation read uncommitted 4 p l.i f k...
Spring 事務隔離級別
資料庫事務的隔離級別有4種,由低到高分為為read uncomitted,read comitted,repeatable read serializable,而且,在事務的併發操作中可能會出現髒讀,不可重複度,虛讀 幻讀 髒讀 read uncomitted 什麼都防不住 乙個事務讀到另外乙個事務...
Spring事務隔離級別
事務操作可能出現的問題 更新丟失 lost update 當系統允許兩個事務同時更新同一資料時,發生更新丟失。髒讀 dirty read 當乙個事務讀取另乙個事務尚未提交的修改時,產生髒讀。非重複讀 nonrepeatable read 第一次讀 得到乙個結果 再讀,換了乙個結果 幻像 phanto...