事务也要日志配置
!!!!debug前面记得加空格
logging:
level:
org.springframework.jdbc.support.JdbcTransactionManager: debug
rollbackFor
默认情况下,只有出现RunTimeException才会回滚事务,rollbackfor属性用于控制出现何种异常类型,回滚事务
@Transactional(rollbackFor = Exception.class)
@Override
public void delete(Integer id) throws Exception {
deptMapper.deleteById(id);//根据id删除部门信息
if(true){
throw new Exception("出错啦");
}
empMapper.deleteByDeptId(id);//根据部门id删除该部门下的员工
}
propagation
事务传播行为:指的就是当前一个事务方法被另一个事务方法调用时,这个事务方法应该如何进行事务控制
REQUIRED:大部分情况下都是用这个传播行为即可
REQUIRED_NEW:当我们不希望事物之间相互影响时,可以使用该传播行为。比如下订单之前需要记录日志,不论订单保存成功与否,都需要保证日志能够记录成功。