spring的事務傳播特性

2021-06-06 16:40:19 字數 972 閱讀 5211

事務的幾種傳播特性

1. propagation_required: 如果存在乙個事務,則支援當前事務。如果沒有事務則開啟

2. propagation_supports: 如果存在乙個事務,支援當前事務。如果沒有事務,則非事務的執行

3. propagation_mandatory: 如果已經存在乙個事務,支援當前事務。如果沒有乙個活動的事務,則丟擲異常。

4. propagation_requires_new: 總是開啟乙個新的事務。如果乙個事務已經存在,則將這個存在的事務掛起。

5. propagation_not_supported: 總是非事務地執行,並掛起任何存在的事務。

6. propagation_never: 總是非事務地執行,如果存在乙個活動事務,則丟擲異常

7. propagation_nested:如果乙個活動的事務存在,則執行在乙個巢狀的事務中. 如果沒有活動事務,

則按transactiondefinition.propagation_required 屬性執行

spring配置宣告式事務:

* 配置sessionfactory

* 配置事務管理器

* 事務的傳播特性

* 那些類那些方法使用事務

2、編寫業務邏輯方法

* 繼承hibernatedaosupport類,使用hibernatetemplate來持久化,hibernatetemplate是

hibernate session的輕量級封裝

* 預設情況下執行期異常才會回滾(包括繼承了runtimeexception子類),普通異常是不會滾的

* 編寫業務邏輯方法時,最好將異常一直向上丟擲,在表示層(struts)處理

* 關於事務邊界的設定,通常設定到業務層,不要新增到dao上

classpath:hibernate.cfg.xml

spring事務傳播特性

1.propagation required 如果存在乙個事務 則支援當前事務。如果沒有事務則開啟。2.propagation supports 如果存在乙個事務 則支援當前事務。如果沒有事務則非事務執行。3.propagation mandatory 如果已經存在乙個事務 則支援當前事務。如果沒有...

spring事務傳播特性

spring事務傳播特性 事務傳播行為就是多個事務方法相互呼叫時,事務如何在這些方法間傳播。spring支援7種事務傳播行為 spring 預設的事務傳播行為是 propagation required,它適合於絕大多數的情況。假設 servivex methodx 都工作在事務環境下 即都被 sp...

Spring事務傳播特性

傳播性值描述 propagation required 0當前有事務就用當前的,沒有就用新的 propagation supports 1事務可有可無,不是必須的 propagation mandatory 2當前一定要有事務,不然就拋異常 propagation requires new 3無論是...