SpringMVC在controller层捕获了service层的异常,事务还会回滚吗

如题,我在service层加了事务,并在controller层捕获了service层的异常并处理掉,那么service层的事务会回滚吗?

会回滚,
在service层抛出的异常,你在controller层能捕捉到这个异常并处理就可以回滚(前提是你捕捉的异常大于抛出的异常)

只要你service层抛出了异常,并且你加的事务可以处理这个异常,也就是rollbackfor=..Exception.class 这个符合你抛出的异常,不管外面有没有捕获都可以回滚

看你的service中有没有开启其他事务,如果没有,则可以回滚。如果有,则被调用重新开启的service事务是不会回滚的