猿问

spring 中的service事务处理

在一个service里依次调用另外两个serivce方法,出错了会事务回退吗


大概是下面的这种情况


//service A本身没有对DAO的处理,但是B和C就有对DAO的处理

service A {


service B.someMethod()//调用service B


service C.someMmethod()//调用service C


}

//如果B先出错了,那么B会事务回退,也不会去执行C了,但是,如果B成功了,C出错了,会把B的事务给回退了吗?请大神们赐教。。谢谢阅读


慕标琳琳
浏览 588回答 3
3回答

繁星coding

1、只要抛出的是 checked异常,不管有没有捕获,都不会回滚2、如果C抛出了runtime 异常,A捕获了,则B不会回滚;如果A没有捕获,则回滚。

芜湖不芜

自己测试一下嘛,强制C出错。
随时随地看视频慕课网APP

相关分类

Java
我要回答