我在思考如何在一个带有@Transactional的方法中高效处理大量数据
为简单起见,假设我们有这样的方法:
@Transaction
public void operation(List<VO> list) {
for(VO vo : list) {
validations(vo);
mapper.selectData(vo);
mapper.insertData(vo);
mapper.updateData(vo);
}
}
如果该方法验证输入vo,选择、插入和更新,
如果集合的大小变得非常大,这种方法会花费很多时间。
经过多方考虑,
我试图通过只对插入语句使用
<foreach>
来降低插入速度(因为我的环境是mybatis),
但我留下了一个问题,因为我认为一个更好的方法或者你的想法将需要在一起。