如何做事务回滚

a1123454 2010-02-04 03:47:07
流程如下:
success=操作1 是否成功;
if(success){
success=操作2是否成功;
if(!success){
操作1回滚;
}
}else{

}

我看了Spring的事务管理,那个好像只能对一个操作进行管理,对于我上面提到的好像不行.

想问下经验丰富的人,你们是怎么处理的.

谢谢
...全文
278 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
a1123454 2010-02-05
  • 打赏
  • 举报
回复
我用的数据持久层框架,把2步看成1步操作(就像存储过程)的话,是不是每一次做这样的操作都先开启事务,只有都成功了,然后提交事务.
但是想第一步成功后才能执行第二步,第一步不提交事务怎么去开始第二步.
也不知道自己描述清楚没有,麻烦大家看看

liu4545533 2010-02-04
  • 打赏
  • 举报
回复
使用jdbc的 setautosubmit(false)
lp19890601 2010-02-04
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 dickli1986 的回复:]
你应该把这两操作看成一个事务,有一个操作失败,则事务回滚,理解事务的概念,多步数据库操作最好自己控制事务
[/Quote]

合二为一
phoenixYiYou 2010-02-04
  • 打赏
  • 举报
回复
事务是把操作1和操作2看成一个整体的!要么都成功,要么都失败,这才是事务!
你说的,就不是事务!就只能自己写!
譬如,操作1是insert 1那么回滚1 就是delete 1
操作2时insert 2那么回滚2 就是delete 2
呵呵!
dickli1986 2010-02-04
  • 打赏
  • 举报
回复
你应该把这两操作看成一个事务,有一个操作失败,则事务回滚,理解事务的概念,多步数据库操作最好自己控制事务
Asdcer 2010-02-04
  • 打赏
  • 举报
回复
错了,使用存储过程中的事务
Asdcer 2010-02-04
  • 打赏
  • 举报
回复
spring的事务不满足的话,那就用存储过程回滚
xiaoskery 2010-02-04
  • 打赏
  • 举报
回复
问题要描述清楚
zhangwenmin 2010-02-04
  • 打赏
  • 举报
回复
事务就是要么成功要么失败,你问的这个问题你为什么要这样实现呢?

打个比方,你更新两张关联的表,按你说的就是我更新一张表不更新另一张表么?

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧