Spring對事務的管理及配置

2021-08-25 02:43:04 字數 1718 閱讀 6576

spring管理事務的優點有很多,這裡不細說直接進入主題。

一:使用配置的方式進行管理

1.事務管理器

事務的管理 離不開資料來源  大家需要將資料來源注入才可進行事務的管理

2.配置通知

中以你自己用的方法增刪改查的字首進行配置即可

isolation:隔離級別propagetion:傳播行為read-only:是否唯讀

事務的傳播行為擴充套件:

1、propagation_required:如果當前沒有事務,就建立乙個新事務,如果當前存在事務,就加入該事務,該設定是最常用的設定。

2、propagation_supports:支援當前事務,如果當前存在事務,就加入該事務,如果當前不存在事務,就以非事務執行。『

3、propagation_mandatory:支援當前事務,如果當前存在事務,就加入該事務,如果當前不存在事務,就丟擲異常。

4、propagation_requires_new:建立新事務,無論當前存不存在事務,都建立新事務。

5、propagation_not_supported:以非事務方式執行操作,如果當前存在事務,就把當前事務掛起。

6、propagation_never:以非事務方式執行,如果當前存在事務,則丟擲異常。

7、propagation_nested:如果當前存在事務,則在巢狀事務內執行。如果當前沒有事務,則執行與propagation_required類似的操作。

3.配置切點(也就是你要將事務在**進行管理,當然 根據前輩們的習慣都是service層進行管理了)

這是切點  指定要在所有的service實現類進行管理事務

*.serviceimpl.*(..)   :

第乙個*號即咱們經常寫的serviceimpl的字首名 

第二個*號是對所有的方法名稱都作為管理 

第三個(..)代表方法的引數

到此spring以配置的方式管理事務就ok了

二·註解的方式

首先要在spring配置檔案中開啟註解(掃瞄包下的所有註解 ---相當於你的主包)

然後配置事務管理器

接下來事務的管理就要在**裡面進行新增

第一種方式:(在類名上面新增覆蓋類中所有的方法都具有事務的管理)

例如(不過一般不用書寫後面括號裡面的配置,想加也可以不加也行)

@transactional(propagation=required read-only=true isolation=default)
第二種方式: 在方法名上面進行事務配置和上面一樣。

由此 spring對事務的管理即配置就ok了  有什麼不足之處希望各位同道中人給與建議,感謝。

spring對事務的配置方式

spring對事務的配置方式,有兩種 使用xml配置檔案的形式 優點 可以在後期維護時,適當調整事務管理模式,並且只要遵循一定的命名規範,可以讓程式設計師不必關心事務本身。缺點 系統越龐大,xml檔案就越臃腫,一定程度上增加了維護的難度。使用註解的形式 優點 配置比較方便,程式設計師只要在servi...

spring 對事務的支援

id txmanager class org.springframework.jdbc.datasource.datasourcetransactionmanager name datasource ref c3p0datasource bean bean id c3p0datasource cla...

Spring對事務的處理

spring框架可以幫我們做事務的處理,針對不同的平台處理事務 不同的問題,它提供了transactionmanager介面。transactionmanager管理事務的屬性 1 事務的隔離級別 預設不做更改 2 是否唯讀,判斷此次事務是否更新資料庫,如果選true,然後 中有更新資料庫的操作會報...