我有一个要使用诱饵插入DB的记录列表。以前,我的代码类似于:
for(Item item : items){
sqlSession.insert("insert", item);
}
使用此方法有效,但由于项数的原因,我发现Mysql
服务器上有动态增量DiskIO。
由于我几乎无法访问MySql配置,并希望解决此高磁盘io问题,因此我找到了一些可能的解决方案:
ExecutorType.BATCH
用于sqlSession
insert into Item values <foreach collection="list" item="item" index="index" separator=","> (#{item.a}, #{item.b}...) </foreach>
有人知道哪个解决方案可以解决我的高diskIO问题,这两种解决方案之间的主要区别是什么?谢谢。