spring的宣告式事務控制的步驟

2021-10-09 08:35:13 字數 820 閱讀 9925

配置事務管理器

配置事務的通知

- tx:advice標籤配置事務通知

- id:給事務通知起乙個唯一標識

- transaction-manager:給事務通知提供乙個事務管理器引用

配置aop的通用切入點表示式

建立事務通知和切入點表示式的對應關係

配置事務的屬性

- 在事務的通知tx:advice標籤中:tx:method

配置事務的屬性

- isolation:用於指定事務的隔離級別,預設default,表示使用資料庫的預設隔離級別

- propagation:用於指定事物的傳播行為,預設值為required,表示一定會有事務,增刪改的操作。查詢方法用supports

- read-only:用於指定事務是否唯讀。只有查詢方法才可以設定為true,預設值為false,表示讀寫

- timeout:用於指定事務的超時時間,預設值為-1,表示永不超時,如果指定數值,則以秒為單位

- rollback-for:指定乙個異常,當產生該異常時,事務回滾,其他異常不回滾,沒有預設值,表示任何異常都回滾。

- no-rollback-for:指定乙個異常,產生該異常時,事務不回滾,其他異常時回滾,沒有預設值,表示任何異常都回滾

配置事務管理器

開啟spring對事務註解的支援

在需要事務支援的地方使用@transaction

在方法上面加上註解,並且配置相關屬性(上文有)

Spring宣告式事務控制

什麼是事務控制?與資料庫建立連線connection後,每一次的進行查詢 更新操作,如果沒有將其歸為乙個事務,則是獨立進行的。而這樣會導致一些錯誤場景的發生。經典的如銀行轉賬業務,轉出方錢減少了,期間發生了異常,對方的錢卻沒有到賬等情況 為什麼要先了解程式設計式事務?宣告式事務底層即通過程式設計式事...

Spring配置宣告式事務控制

transactionmanager class org.springframework.jdbc.datasource.datasourcetransactionmanager name datasource ref datasource property bean tx adviceid txm...

spring基於XML的宣告式事務控制

首先再我們的ioc容器中配置事務管理器的bean物件 然後給事務管理器中注入資料來源 然後配置事務通知,此時我們需要重新匯入事務的約束,因為一開始我們沒有匯入aop和tx的約束 配置事務通知的標籤 id屬性標識給事務通知起乙個唯一標準 transaction manager屬性用於給事務通知提供乙個...