SpringBoot入門學習(十)~~ 事務配置
目錄
SpringBoot事務配置
-
一、Mybatis整合Spring的事務配置方式
回顧Mybatis配置事務有兩種方式,一種是註解方式;另一種是配置檔案的方式。註解方式首先開啟註解掃描,然後在service上使用@Transactional註解即可。如果是配置檔案方式的話,利用aop特性,在service請求,引入tansactionManager的事務管理機制。
這裡的話,我只介紹使用註解的方式。因為,xml的方式是通過
@ImportResource的註解引入xml的配置檔案,實現這種配置檔案+註解兩種方式共存情況,在SpringBoot開發中,更加傾向於使用註解的方式,而不用xml。
-
二、入門小小案例~~儲存使用者資訊
在原來的基礎之上進一步開發
1、在UserMapper開發一個插入資料的方法
@Repository |
2、編寫IUserService介面+UserServiceImpl時限內
|
|
3、編寫控制器類,直接呼叫儲存資料方法,返回“儲存成功”
|
4、啟動專案,訪問/user/save方法,檢視資料庫。
表示資料插入成功了。接下來模擬異常的情況出現!
5、修改儲存資料程式碼,故意除0
|
6、啟動專案,訪問/user/save方法,效果圖如下:
檢視資料庫,是否儲存了資料:
說明在預設情況下是沒有事務的。
-
三、註解方式配置Mybatis的事務
- 開啟註解掃描驅動,對應SpringBoot中的@EnableTransactionManagement
|
2、在service類上加上,事務註解
@Transactional即可
|
重複上面的實驗,嘗試在異常的情況下去儲存
發現在異常的情況下已經不插入資料了。
【總結:】
其實呢!在SpringBoot預設已經啟動了註解驅動掃描。也就是我們不用再Application中配置
@EnableTransactionManagement
、
直接在需要啟動事務的類檔案上打上@Transactional註解即可