@Transactional(rollbackFor = Exception.class)

@Transactional(rollbackFor = Exception.class)
这个注解只有在出异常时才会回滚,需要回滚时没有异常也要人为制造异常(自定义异常)
所以,如果使用了异常捕获,很有可能异常没有被抛出,而是捕获消化了(人为把异常友好的处理了,这种情况不能回滚)
总之,尽量不去捕获,让异常自己抛出来
原文地址:https://www.cnblogs.com/hellowzd/p/9916434.html