MyBatis批量插入数据优化(5)
导读:MyBatis批量插入数据优化,然后继续跑了下 mybatis-plus 自带的 saveBatch,果然性能大大提高直接由原来的9204毫秒,提升到现在的3903毫秒 再来跑一下JDBC 的 executeBatch ,果然也提高了。
MyBatis批量插入数据优化

然后继续跑了下 mybatis-plus 自带的 saveBatch,果然性能大大提高直接由原来的9204毫秒,提升到现在的3903毫秒

再来跑一下JDBC 的 executeBatch ,果然也提高了。
直接由原来的6667毫秒,提升到了3794毫秒

结果对比
| 批量保存方式 | 数据量(条) | 耗时(ms) |
|---|---|---|
| 单条循环插入 | 100000 | 195569 |
| mybatis-plus saveBatch | 100000 | 9204 |
| mybatis-plus saveBatch(添加 rewrite 参数) | 100000 | 3903 |
| 手动拼接 SQL | 100000 | 6667 |
| JDBC executeBatch | 100000 | 10958 |
| JDBC executeBatch(添加 rewrite 参数) | 100000 | 3794 |
总结
通过实验结果,我们可以得出以下结论:
- mybatis-plus 的 saveBatch 方法相比单条循环插入在性能上有所提升,但仍然不够理想。
- JDBC 的 executeBatch 方法在默认情况下性能与 mybatis-plus 的 saveBatch 类似,但通过设置 rewriteBatchedStatements 参数为 true 可显著提高性能。
- rewriteBatchedStatements 参数的作用是将一批插入拼接成 insert into xxx values (a),(b),(c)... 这样的一条语句形式,提高了性能。
优化建议
如果您在项目中需要进行批量插入操作,我建议考虑以下优化方案:
- 如果使用 mybatis-plus,可以尝试将 JDBC 连接字符串中的 rewriteBatchedStatements 参数设置为 true,以提高 saveBatch 方法的性能。
上述分享的MyBatis批量插入数据优化的技术经验小知识,以上内容供大家学习了解!
相关阅读
-
如何创建一个网页前端 web创建一个简单网页教程
IT电脑小知识篇,关于如何创建一个网页前端和web创建一个简单网页教程的相关知识,接下来就是全面介绍。 首先我要说学习前端网页制作其实很简单! 今天我带着你踏入前端开发的大门,我
-
sql查询语句实例教程 sql查询语句大全及实例
最近在学习sql数据库教程的时候,顺便记录了一下笔记,相信很多人也在搜索: 常用的sql查询语句实例大全 ,经过我的学习实践总结,当然这是最基本的sql查询语句代码。 sql查询语句 SELECT
-
创建自己的个人网站怎么弄 网页设计制作网站
小编为大家讲一讲创建自己的个人网站怎么弄和网页设计制作网站的方法内容,很不错的方法小知识,建议收藏哦! 随着个人创业的流行,很多个人也需要一个比较详细的网站来展示自己,开
-
多租户SaaS平台的数据库方案详解
正文核心导读:多租户SaaS平台的数据库方案详解的教程内容,下面来一起了解一下吧。 随着云计算和SaaS(Software as a Service)模型的兴起,多租户系统成为了构建灵活、高效应用的重要架构。


