1.由于AOP的特性,在使用@Transactional时不能在本类里面调用,否则事务将会失效。

  @Override
    public Boolean insertDept() {
        this.addDept();
        return true;

    }
    @Transactional
    public void addDept(){
        deptMapper.addDept("huashui");
        int i = 1/0;
    }

在进行一次失败的请求时,在数据库中看到数据被成功的写进数据库,因此可判断,注解失效

2. @Transactional 注解只能应用到 public 可见度的方法上 。 如果你在 protected、private 或者 package-visible 的方法上使用 @Transactional 注解,它也不会报错, 但是这个被注解的方法将不会展示已配置的事务设置。