Jfinal 事务回滚问题

阿西表 发布于 2016/07/14 21:43
阅读 395
收藏 0

@JFinal 有个事务的问题请教一下,代码在下面,如果执行到第二个if 的结果为false,save方法会回滚吗? 

public boolean saveUserCharge(UserCharge uc){
boolean flag=Db.tx(new IAtom() {

@Override
public boolean run() throws SQLException {
boolean success=uc.save();
if(!success){
return false;
}
//账户增加金额
double add_Money=uc.getDouble("money");
double add_sendMoney=uc.getDouble("send_money");
if(add_Money==0&&add_sendMoney==0){
return false;
}
if(uc.getInt("uid")==0||uc.getInt("uid")==null){
return false;
}

return true;
}
});
return flag;
}

加载中
0
JFinal
JFinal
   只要是 IAtom 接口实现类中的 run 方法返回  false 就会被回滚,不管是在第几 if 都一样。但你要先确保事务支持的一些必要条件,例如:mysql 需要 innodb 引擎,不要跨数据源,事务级别要符合代码的需要。
阿西表
返回顶部
顶部