老师 关于事务是否生效的问题

来源:16-10 Spring 事务对调用事务方法的处理

华山小叮当

2019-12-12

问题1:在同一个类中 没有标注事务注解的方法调用标注事务注解的方法 会导致事务失效 当执行未标注事务注解的方法时会动态生成代理对象 课程中提到的this指向的是一个属性 这里不明白 就没有理解为什么会导致事务失效

问题2:在不同的类中 没有标注事务注解的方法调用多个标注事务注解的方法 其中调用的方法中有本类的 会是什么情况

写回答

1回答

张勤一

2019-12-13

同学你好:

    你这里的两个问题其实都是事务与注解的关系,其实不需要看源码中的实现(这本身很多,而且很难理解)。我这里给一份关于事务与注解的描述:

@Transactional 加于private方法, 无效
@Transactional 加于未加入接口的public方法, 再通过普通接口方法调用, 无效
@Transactional 加于接口方法, 无论下面调用的是private或public方法, 都有效
@Transactional 加于接口方法后, 被本类普通接口方法直接调用, 无效
@Transactional 加于接口方法后, 被本类普通接口方法通过接口调用, 有效
@Transactional 加于接口方法后, 被它类的接口方法调用, 有效
@Transactional 加于接口方法后, 被它类的私有方法调用后, 有效

    欢迎来 QQ 群随时交流、讨论,也非常感谢同学的支持!

1
1
华山小叮当
非常感谢!
2019-12-13
共1条回复

Spring Cloud微服务架构 设计实现广告系统

广告营销系统,未来大中型企业的标配

2136 学习 · 927 问题

查看课程