SSH整合数据回滚问题,怎么回滚调用set方法保存的值 20C

因为hibernate中对托管状态的bean调用set方法后实际上最终是会更新到数据库。这样会有一个问题。
public String checkAndUpdate(){

    for(i=0;i<list.size();i++){
        Bean bean = list.get(i);
        bean.setXXX(“12345”);//这样实际上会更新到数据库。
        //TODO
        if(bean.检查状态失败()){
            return “无法更新,推出程序方法”;
        }
        dao.update(bean);
    }
    return "OK";
}

我在调用checkAndUpdate方法的时候某个数据在遍历检查状态的时候是吧了返回了“无法更新,推出程序方法”,但是数据被更新了,我是希望set的值回滚
不知道怎么回滚,dao类是spring注入的,也无法获取session对象。这种情况下有其他办法吗?

3个回答

抛个RunTimeException异常吧

我觉得你的逻辑不对啊。看你的代码是想实现一个检查没通过就都不能更新,那为啥不先检查状态,通过再做修改呢?

spring配置中是有事务管理的配置的,你上网百度一下spring的事务管理配置,再通过注解就很简单的实现了

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!