spring - JavaWeb中 Service 層的事務(wù)問(wèn)題
問(wèn)題描述
下面是我的Spring配置
通過(guò)上面的配置可以看出我是在所有的service中加入的事物,也就是說(shuō)我的service出錯(cuò)了會(huì)回滾所有的提交。那么如果遇到Aservice調(diào)用Bservice的方法,然后Bservice調(diào)用了Cservice層的方法,A->B->C這種情況屬于事物層嵌套調(diào)用,那么問(wèn)題來(lái)了我在Cservice中如果出現(xiàn)異常,現(xiàn)在是只會(huì)回滾Cservice的事物,還是會(huì)把A和B的事物都回滾。請(qǐng)大牛來(lái)幫忙解釋下這個(gè)問(wèn)題。我也是突然想到有這種情況實(shí)際沒(méi)有這么做呢~
問(wèn)題解答
回答1:這個(gè)沒(méi)試過(guò)。不過(guò)一般不建議service調(diào)用service,一些通用的可以放在dao
回答2:propagation='REQUIRED' 是說(shuō)如果當(dāng)前存在事務(wù),就放入當(dāng)前事務(wù)范圍內(nèi),否則新建事務(wù)。所以它們都會(huì)屬于同一個(gè)事務(wù)的。
回答3:這可以用過(guò)配置事務(wù)的傳播方法來(lái)定義吧。是要加入當(dāng)前事務(wù),還是自己新建一個(gè)事務(wù)。
相關(guān)文章:
1. android - weex 項(xiàng)目createInstanceReferenceError: Vue is not defined2. PHPExcel表格導(dǎo)入數(shù)據(jù)庫(kù)怎么導(dǎo)入3. android - 哪位大神知道java后臺(tái)的api接口的對(duì)象傳到前端后輸入日期報(bào)錯(cuò),是什么情況?求大神指點(diǎn)4. pdo 寫入到數(shù)據(jù)庫(kù)的內(nèi)容為中文的時(shí)候?qū)懭雭y碼5. javascript - 如圖,百度首頁(yè),查看源代碼為什么什么都沒(méi)有?6. vue2.0+webpack 如何使用bootstrap?7. PHP類封裝的插入數(shù)據(jù),總是插入不成功,返回false;8. mac連接阿里云docker集群,已經(jīng)卡了2天了,求問(wèn)?9. vue.js - 為什么我的vue項(xiàng)目上傳到github不能預(yù)覽?10. 請(qǐng)問(wèn)PHPstudy中的數(shù)據(jù)庫(kù)如何創(chuàng)建索引
