同一个类中 多个方法之间互相调用 注解的事务是同一个么
写了一个很多行的方法 有很多对数据库的操作 现在想要把这些操作单独提出作为单独的方法 这些单独的放发要用注解么 注解了之后调用的话 还是同一个事务么
相关代码
public class Word{
@Transaction
public void A(){
String b = this.B();
return this.C(b);
}
@Transaction
public String B(){
// do something
}
@Transaction
public String C(String b){
// do something
}
}
昨天查到了这个文章
spring 事务传播行为实例分析
按理说,多个事物嵌套遵循
spring
事务传播属性的约束,也就是说可能在同一个事务,也有可能不在同一个事务中(基于你设置的传播属性),但是你这里是内部调用,B
和C
的调用不走代理transaction
无效,所以你这里还是在同一个事务中。