mybatis 批处理

remyyoung 发布于 2017/06/26 14:48
阅读 429
收藏 0

mybatis 批处理的时候其中有一条记录出错,整个批处理不回滚,只回滚出错的

加载中
0
l
liun

开始和结束批处理放在事务中

0
随风而浮沉
随风而浮沉

不会吧,你是在代码逻辑批处理,而且不在事务层吧

0
M
MaShenLin

怎么觉得要进行全部回滚的。。。

0
remyyoung
remyyoung

批处理的数据量大,要是全不回滚成本太高

0
remyyoung
remyyoung

在批处理的时候事务的传播属性设置成@Transactional(propagation=Propagation.REQUIRED)

具体处理每一条sql的时候事务属性设置成@Transactional(propagation=Propagation.REQUIRES_NEW) 

批处理中每一条SQL处理在挂起原有事务,开启一个新的事务(当这个事务完成(成功或者回滚)),这样做是不是就不影响批处理,只是回滚失败的

返回顶部
顶部