在宣告事務時,只需要通過value屬性指定配置的事務管理器名即可,例如:@transactional(value="transactionmanagerprimary")
。
除了指定不同的事務管理器之後,還能對事務進行隔離級別和傳播行為的控制,下面分別詳細解釋:
#### 隔離級別
隔離級別是指若干個併發的事務之間的隔離程度,與我們開發時候主要相關的場景包括:髒讀取、重複讀、幻讀。
我們可以看org.springframework.transaction.annotation.isolation
列舉類中定義了五個表示隔離級別的值:
publicenum isolation
指定方法:通過使用isolation
屬性設定,例如:
@transactional(isolation = isolation.default)
傳播行為
所謂事務的傳播行為是指,如果在開始當前事務之前,乙個事務上下文已經存在,此時有若干選項可以指定乙個事務性方法的執行行為。
我們可以看org.springframework.transaction.annotation.propagation
列舉類中定義了6個表示傳播行為的列舉值:
publicenum propagation
指定方法:通過使用propagation
屬性設定,例如:
@transactional(propagation = propagation.required)
springBoot中mybatis事務使用方法
1.在springboot中mybatis plus boot starter 或 mybatis spring boot starter 會自動定義好事物,在pom.xml中匯入jar 3.在需要回滾的方法或類上新增註解 transactional user表資料會執行成功 而 userinfo表...
springboot中新增事務註解
1.首先在service層中的方法前新增 transactional service public class userservice transactional public void deletebyid integer id 2.在springboot的啟動中新增註解 enabletransa...
springboot mybatis 事務管理
宣告式的事務管理是基於aop的,在springboot中可以通過 transactional註解的方式獲得支援,這種方式的優點是 1 非侵入式,業務邏輯不受事務管理 的汙染。2 方法級別的事務回滾,合理劃分方法的粒度可以做到符合各種業務場景的事務管理。我們在springboot mybatis dr...