2 malie1981 malie1981 于 2017.01.06 09:34 提问

java的for循环中的事务问题

在service层做for循环,现在的需求是每一次循环后的数据库操作能生效,如果某一次循环出错只会回滚当前这次的数据库操作,之前循环的操作不回滚,不知道有没有办法做到这种事务控制?在action做循环调用service是可以实现这种要求,但是这样的话就会业务代码写到action上了,不是很合理

3个回答

zhao_my_love
zhao_my_love   2017.01.06 10:09

在service层写一个不加事务的方法,去循环执行加了事务的方法。不知道你听明白没有

xionglangs
xionglangs   Rxr 2017.01.06 10:35

1、这里设置手动提交事务,并把事物的开启和提交放入for循环里面。
2、一个普通的不加事物的service方法,循环调用一个添加了事物的service方法。

liuchao901010a
liuchao901010a   2017.01.06 16:45

最简单的方法就是把service里的循环加上try catch

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!