开发者社区 问答 正文

jfinal 事务 求解?报错

@Jfinal 你好,我代码如下

@Beafor(Tx.class)

public void save(){

insert 第一张表,正常;

java代码报错,异常

insert 第二张表,正常;

}

这样第一张表数据插入进去了,是不是事务只有在数据库操作出错的时候才会回滚?

展开
收起
爱吃鱼的程序员 2020-06-20 16:37:35 418 分享 版权
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB
    }catch(NestedTransactionHelpExceptione){if(conn!=null)try{conn.rollback();}catch(Exceptione1){e1.printStackTrace();}}catch(Exceptione){if(conn!=null)try{conn.rollback();}catch(Exceptione1){e1.printStackTrace();}thrownewActiveRecordException(e);}

    看了下Tx代码,有Exceptione会拦截所有异常,并回滚,你试验是什么样的。

    回复 @红薯苗:加了try能往上抛就行。我实验是第一个表的数据添加进去了。是不是跟我在这三条语句上加了一个try。。。catch有关系应该是要抛出 ActiveRecordException异常才行吧
    2020-06-20 16:37:51
    赞同 展开评论
问答分类:
问答地址: