在service层做for循环,现在的需求是每一次循环后的数据库操作能生效,如果某一次循环出错只会回滚当前这次的数据库操作,之前循环的操作不回滚,不知道有没有办法做到这种事务控制?在action做循环调用service是可以实现这种要求,但是这样的话就会业务代码写到action上了,不是很合理
在service层写一个不加事务的方法,去循环执行加了事务的方法。不知道你听明白没有
1、这里设置手动提交事务,并把事物的开启和提交放入for循环里面。
2、一个普通的不加事物的service方法,循环调用一个添加了事物的service方法。
最简单的方法就是把service里的循环加上try catch