1.问题现象
因为做后台接口服务时,数据库数据有时候update为0条时,因为业务逻辑需要也要触发事务回滚SQL。但是在实际代码中,发现业务类使用autowired自动装配调用时,自己throw异常,并不会触发回滚。
自动装配:
人工throw异常:
2.解决方法
方法1:
不使用autowired,直接new 服务类对象。这个方法不好,脱离了springboot的意义。
方法2:
注解添加属性说明
@Transactional(rollbackFor = {Exception.class, RuntimeException.class})