Mybatis两种不同批量插入方式的区别有哪些
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,小编给大家分享一下Mybatis两种不同批量插入方式的区别有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!前言本文使用 Mybatis 进行批量插入,比较两种不同的插入方式的区别
千家信息网最后更新 2026年11月02日Mybatis两种不同批量插入方式的区别有哪些前言
测试
拼接 sql
batch插入
小编给大家分享一下Mybatis两种不同批量插入方式的区别有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
前言
本文使用 Mybatis 进行批量插入,比较两种不同的插入方式的区别。
测试
批量插入注意事项:
1、连接数据库时添加参数 allowMultiQueries=true,支持多语句执行,批处理
2、数据库是否支持大量数据写入,设置 max_allowed_packet参数保证批次提交的数据量
拼接 sql
public void batchDemo() { long start = System.currentTimeMillis(); List list = new ArrayList<>(); for (int i = 0; i < 5000; i++) { User user = new User(); user.setId(UUID.randomUUID().toString()); user.setName("feiyangyang"); user.setPwd("feiyangyang"); list.add(user); } userService.batchForeach(list); long end = System.currentTimeMillis(); System.out.println("---------------" + (start - end) + "---------------"); } insert into user(id,`name`,pwd) values (#{user.id}, #{user.name}, #{user.pwd})
batch插入
public void batchInsert() { long start = System.currentTimeMillis(); SqlSession sqlSession = sqlSessionTemplate.getSqlSessionFactory().openSession(ExecutorType.BATCH); UserService mapper = sqlSession.getMapper(UserService.class); for (int i = 0; i < 5000; i++) { User user = new User(); user.setId(UUID.randomUUID().toString()); user.setName("feiyangyang"); user.setPwd("feiyangyang"); mapper.batchInsert(user); } sqlSession.commit(); long end = System.currentTimeMillis(); System.out.println("---------------" + (start - end) + " ---------------");}注意:batch模式也有自己的问题,比如在Insert操作时,在事务没有提交之前,是没有办法获取到自增的id,这在某型情形下是不符合业务要求的
数据对比
| 拼接sql (ms) | batch插入 (ms) | |
|---|---|---|
| 500条 | 1744 | 639 |
| 2000条 | 26966 | 2473 |
| 5000条 | 173668 | 7382 |
看完了这篇文章,相信你对"Mybatis两种不同批量插入方式的区别有哪些"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
数据
不同
方式
参数
数据库
篇文章
支持
业务
事务
事项
前言
办法
完了
情形
批次
更多
模式
注意事项
知识
行业
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技工作委员会
互联网科技ppt模板
菲比寻常互联网科技
互联网巨头投资的硬核科技
欧洲十大科技互联网公司
南山科技园互联网公司有哪些
互联网校园科技培训
来此购互联网科技有限公司
岳阳华臻互联网科技有限公司
互联网在线教育科技创业
上海京穆互联网科技有限公司
35岁以上互联网科技行业
上海乐五互联网科技有限公司
容联科技互联网电商
科技互联网公司两年变化
杭州融税互联网科技有限公司
瑞安市蟠桃会互联网科技有限公司
宁波允成互联网科技有限公司
科技互联网企业在行动
武汉亿视互联网科技有限公司
湖南永感互联网科技有限公司
互联网电商科技
广州紫鲸互联网科技
栖莱科技互联网股份有限公司
科技类公司包括互联网吗
工业互联网等科技实现智能化赋能
深圳无忧互联网科技
广州有谷有贝互联网科技有限公司
2021世界互联网领先科技成果发布
互联网企业和网络科技有限公司