gpt4 book ai didi

java - 从另一个 @Transactional 注解方法调用 @Transactional 注解方法

转载 作者:行者123 更新时间:2023-12-01 17:57:29 27 4
gpt4 key购买 nike

当我从另一个事务方法调用一个事务方法时会发生什么,现在我的第二个事务方法已完成,并且它返回到第一个事务方法,不幸的是它失败了,所以它会回滚所有内容,意味着它会回滚第二个事务方法吗?交易方式改变..??注意:这两个方法都在同一个类中

@Transactional 
public void method1(){
//do something
call method2();
//do something
...
...
failed here
}

@Transactional
public void method2(){
//do something
save()
}

那么在上面的示例中,它会回滚我在第二个事务方法中保存的所有内容吗?

最佳答案

这取决于 txType。默认情况下它是必需的。因此第一个方法启动事务,并且相同的事务用于调用方法2。

还要注意,同一对象内的方法调用不会触发事务处理。通常,事务处理作为代理进行处理,仅在调用注入(inject)的其他 bean 时才起作用。在您的示例中,您不会注意到差异。

这种情况很重要,如果 method1 不是 @Transactional 而 method2 是。在这种情况下,根本就没有交易。

关于java - 从另一个 @Transactional 注解方法调用 @Transactional 注解方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46211847/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com