NutzCN Logo
问答 Trans.exec 中try catch
发布于 2547天前 作者 啊哈 2067 次浏览 复制 上一个帖子 下一个帖子
标签:
Trans.exec(new Atom() {
    public void run(){
                 dao.insert(sql);
                  test();
    }
}


test(){
         try{
....
        }catch{
.......
       }
}

看了好几个帖子说不要在run里面写try catch 否则不能回滚。如果这么写,test异常的话.第一个insert会回滚吗?

4 回复
Trans.exec(new Atom(){

				@Override
				public void run() {
					dao.insert(r);
					userEdit();
				}
				
			});


public void userEdit(){
     try{
                 int a=1/0;

      }catch(Exception e){
       //在这捕获异常了,上面的第一个insert语句会不会回滚?
因为我看帖子有的说直接在run函数里面写try catch,已经执行过得sql语句不会回滚。
        
        }


}

不会回滚, 除非catch之后再抛出一个异常

我觉得你可以看看Trans.exec是怎么实现的

添加回复
请先登陆
回到顶部