spring中的注解@@Transactional失效的场景代码演示
spring中的注解@@Transactional失效的场景
1 当方法被标记为@Transactional时,但是该方法是非公有方法时,@Transactional注解会失效。
@Service public class UserService { @Transactional private void doSomething() { // ... } }
2 当方法被标记为@Transactional时,但是该方法是静态方法时,@Transactional注解会失效。
@Service public class UserService { @Transactional public static void doSomething() { // ... } }
3 当方法被标记为@Transactional时,但是该方法是被同一个类中的另一个方法调用时,@Transactional注解会失效。
例如:
@Service public class UserService { @Transactional public void doSomething() { doSomethingElse(); } public void doSomethingElse() { // ... } }
4.当方法被标记为@Transactional时,但是该方法是被另一个类中的方法调用时,@Transactional注解会失效。
例如:
@Service public class UserService { @Transactional public void doSomething() { // ... } } @Service public class AnotherService { @Autowired private UserService userService; public void doSomethingElse() { userService.doSomething(); } }
以上是一些可能导致@Transactional注解失效的场景,需要注意避免。
到此这篇关于spring中的注解@transation失效的场景代码演示的文章就介绍到这了,更多相关spring的@transation失效内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Java中ThreadLocal 导致内存 OOM 的原因分析
这篇文章主要介绍了Java中ThreadLocal导致内存OOM的原因分析,文章基于Java的相关内容展开ThreadLocal导致内存OOM的原因分析,需要的小伙v阿布可以参考一下2022-05-05
最新评论