spring事務的傳播性

2021-09-29 15:09:41 字數 540 閱讀 6689

spring事務的傳播行為

1.propagation_manatory:強制使用當前事務,如果當前沒有事務,就會丟擲乙個異常;

2.propagation_nested:如果當前存在事務,則在該事務內巢狀執行(巢狀執行時屬於該事務的子事務,當外層事務提交時,子事務跟著提交;子事務提交或回滾不會影響外層事務),如果當前不存在事務則新建乙個事務;

3.propagation_never:以非事務執行,如果當前存在事務則丟擲異常;

4.propagation_required:如果當前存在事務,則加入該事務(和該事務一起提交回滾),如果當前不存在,則新建乙個事務;該設定是最常用的設定,也是spring的預設設定;

5.propagation_requires_new:無論當前有沒有事務,都新建乙個事務;

6.propagation_supports:支援當前事務,如果當前不存在事務,就以非事務方式執行(非事務方式:每條sql語句各自執行,互不影響);

7.propagation_not_supported:以非事務方式執行,如果當前存在事務,就將該事務掛起;

spring 事務傳播性

大白話講就是,方法之間互相呼叫的時候,事務如何傳播,比如a 呼叫b b 的事務是和a 共用乙個事務 失敗一起提交 還是新事務 兩者事務互不影響 還是說b 不需要事務?這就是事務傳播性的意思。transactional public void methoda transactional public ...

Spring 宣告式事務的傳播性

spring中設定事務的傳播屬性有如下7種 required 業務方法需要在乙個事務中執行,如果方法執行時,已處在乙個事務中,那麼就加入該事務,否則自己建立乙個新的事務.這是spring預設的傳播行為.supports 如果業務方法在某個事務範圍內被呼叫,則方法成為該事務的一部分,如果業務方法在事務...

Spring事務隔離性和傳播性的概念

事務隔離級別 他對其他事務所看到的資料變化進行控制。隔離級別 說明 isolation default 預設級別 對大多數資料庫來說就是isolation read committed isolation read uncommitted 最低的隔離級別。事實上我們不應該隔離級別,因為在事務完成前,...