关于Springboot 无法捕获异常(@Transactional注解导致)
本文链接:https://blog.csdn.net/wd2014610/article/details/101753314
在工作中发现了一个非常奇怪的事情,就是我突然间捕获不了异常。
-
异常捕获
-
关于为什么会出现这样的问题呢?
经过研究发现,原来是在这个类上,被加上了事务的注解@Transactional
。这个事务的注解,就把我的异常给处理掉了,所以在这个被事务注解过的类中,所有的方法里面抛出的异常,都将不可被捕获。 -
解决办法
避免在大类上直接使用@Transactional
注解。以免发生该类下面,所有的接口中都不可以捕获到异常。
去掉类上的事务注解后,我重新跑代码发现就捕获到了异常。
好啦,祝大家工作顺利!