如果数据库事务后方法中发生异常,则在Spring中回滚事务

时间:2018-11-22 00:27:10

标签: spring

Class A{
@Autowired
private B b;

 @Transactional(rollbackFor = Exception.class)
 public void run(){
   try{
    b.insert1();
    b.insert2();
    b.sendFile();

}catch(Exception e){
  //Exception block
}

 }
}

Class B{
  public void insert1(){//db insert happens here}
  public void insert2(){//db insert happens here}

  public void sendFile() throws Exception{

  }

}

在上述情况下,如果insert2方法失败,则回滚可以很好地进行。 但是,如果insert1和insert2完成并且sendFile出现异常,则不会发生回滚。

为此请帮帮我。在过去的两天里,我一直都坚持下去。

谢谢

0 个答案:

没有答案