spring事務傳播機制

2021-10-12 02:49:47 字數 686 閱讀 4774

required(transactiondefinition.propagation_required)
支援當前事務,如果沒有事務會建立乙個新的事務

supports(transactiondefinition.propagation_supports)
支援當前事務,如果沒有事務的話以非事務方式執行

mandatory(transactiondefinition.propagation_mandatory)
支援當前事務,如果沒有事務丟擲異常

requires_new(transactiondefinition.propagation_requires_new)
建立乙個新的事務並掛起當前事務

not_supported(transactiondefinition.propagation_not_supported)
以非事務方式執行,如果當前存在事務則將當前事務掛起

never(transactiondefinition.propagation_never)
以非事務方式進行,如果存在事務則丟擲異常

nested(transactiondefinition.propagation_nested)
如果當前存在事務,則在巢狀事務內執行。如果當前沒有事務,則進行與propagation_required類似的操作。

Spring事務傳播機制

在 spring的 transactiondefinition介面中一共定義了7種事務傳播屬性 propagation required 支援當前事務,如果當前沒有事務,就新建乙個事務。這是最常見的選擇,也是spring事務傳播機制的預設值。propagation supports 支援當前事務,如...

spring事務傳播機制

1.required 必須有乙個事務的支援。如果沒有事務,則新建立乙個,如果有父事務,則使用 fetch 父級事務 2.requires new 必定會建立乙個事務。如果有父事務,則掛起 suspend 父事務,等子事務執行完畢,在恢復 resume 父事務 3.supports 可以有或者沒有事務...

spring事務傳播機制

spring事務傳播機制 propagation required spring預設 如果已經存在事務,那麼加入當前事務,如果不存在事務,則新建事務。總是建立乙個新的事務。新建立事務a,而以前的事務b還在執行。此時有兩個事務,事務a先執行,事務b則被掛起。只有事務a執行完畢後,事務b將繼續執行。ro...