文章詳情頁
spring - JavaWeb中 Service 層的事務問題
瀏覽:108日期:2024-01-08 17:42:25
問題描述
下面是我的Spring配置
通過上面的配置可以看出我是在所有的service中加入的事物,也就是說我的service出錯了會回滾所有的提交。那么如果遇到Aservice調(diào)用Bservice的方法,然后Bservice調(diào)用了Cservice層的方法,A->B->C這種情況屬于事物層嵌套調(diào)用,那么問題來了我在Cservice中如果出現(xiàn)異常,現(xiàn)在是只會回滾Cservice的事物,還是會把A和B的事物都回滾。請大牛來幫忙解釋下這個問題。我也是突然想到有這種情況實際沒有這么做呢~
問題解答
回答1:這個沒試過。不過一般不建議service調(diào)用service,一些通用的可以放在dao
回答2:propagation='REQUIRED' 是說如果當前存在事務,就放入當前事務范圍內(nèi),否則新建事務。所以它們都會屬于同一個事務的。
回答3:這可以用過配置事務的傳播方法來定義吧。是要加入當前事務,還是自己新建一個事務。
標簽:
java
相關文章:
1. mac OSX10.12.4 (16E195)下Mysql 5.7.18找不到配置文件my.cnf2. mysql - 怎么生成這個sql表?3. mysql儲存json錯誤4. php - 公眾號文章底部的小程序二維碼如何統(tǒng)計?5. mysql - 表名稱前綴到底有啥用?6. mysql - 數(shù)據(jù)庫表中,兩個表互為外鍵參考如何解決7. Navicat for mysql 中以json格式儲存的數(shù)據(jù)存在大量反斜杠,如何去除?8. 在mybatis使用mysql的ON DUPLICATE KEY UPDATE語法實現(xiàn)存在即更新應該使用哪個標簽?9. mysql - 數(shù)據(jù)庫建字段,默認值空和empty string有什么區(qū)別 11010. sql語句 - 如何在mysql中批量添加用戶?
排行榜

熱門標簽