MyBatis 批量操作实现原理

aa6384bbaaebd80bb3600a4e9d529a4ab93.jpg

如上图所示:

  • 传入 ExecutorType.BATCH 参数会创建,BatchExecutor 
  • 执行insert 语句时,调用BatchExecutor 内部 doUpdate 仅仅拼写 Statement,addBatch 并未真正执行
  • commit 方法 会调用BatchExecutor 的 doFlushStatements  方法,真正执行sql

723d8a3d0da1bc346d16ba698af5ca9dc09.jpg

另一种批量操作就是根据数据库本身的特点

  • 如下,用foreach 拼接如下sql 语句实现批处理

2e238a4b55ac849cce4195e358ebccc014d.jpg

转载于:https://my.oschina.net/u/3847203/blog/2231213

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值