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 注解,它也不会报错, 但是这个被注解的方法将不会展示已配置的事务设置。