sevice层的一个事务方法A(),
在A()方法里面调用了spring框架中某个类的一个方法B(),
问题是,方法B()会加入到A()方法的事务当中吗?
如果是的话,是不是在项目启动时,spring就定义好了框架中每个方法的事务配置?
还有就是这些与spring的事务的传播属性有没有关系?
希望有大神能够从spring的原理去解释。
sevice层的一个事务方法A(),
在A()方法里面调用了spring框架中某个类的一个方法B(),
问题是,方法B()会加入到A()方法的事务当中吗?
如果是的话,是不是在项目启动时,spring就定义好了框架中每个方法的事务配置?
还有就是这些与spring的事务的传播属性有没有关系?
希望有大神能够从spring的原理去解释。
“事务”是对一个封闭的系统的原子化来说的,通常是指数据库。你随便写一个方法B,它没有可逆的操作,那么会破坏事务的完整性。
一个极端的例子,你的B()的代码是调用支付宝向另一个账户付款,你还能指望这个操作成功之后取消操作,再把钱返回来么?显然不行。
我感觉你想做的是嵌套事务,有关这个,参考:https://www.cnblogs.com/jimmy-muyuan/p/5722708.html