Mybatis如何使用ExecutorType.BATCH
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章主要为大家展示了"Mybatis如何使用ExecutorType.BATCH",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Mybatis如何使用E
千家信息网最后更新 2026年11月04日Mybatis如何使用ExecutorType.BATCH
这篇文章主要为大家展示了"Mybatis如何使用ExecutorType.BATCH",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Mybatis如何使用ExecutorType.BATCH"这篇文章吧。
使用ExecutorType.BATCH
Mybatis内置的ExecutorType有3种,默认为simple,该模式下它为每个语句的执行创建一个新的预处理语句,单条提交sql;而batch模式重复使用已经预处理的语句,并且批量执行所有更新语句,显然batch性能将更优; 但batch模式也有自己的问题,比如在Insert操作时,在事务没有提交之前,是没有办法获取到自增的id,这在某型情形下是不符合业务要求的
具体用法如下
//批量保存方法测试@Test public void testBatch() throws IOException{ SqlSessionFactory sqlSessionFactory = getSqlSessionFactory(); //可以执行批量操作的sqlSession SqlSession openSession = sqlSessionFactory.openSession(ExecutorType.BATCH); //批量保存执行前时间 long start = System.currentTimeMillis(); try { EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.class); for (int i = 0; i < 1000; i++) { mapper.addEmp(new Employee(UUID.randomUUID().toString().substring(0, 5), "b", "1")); } openSession.commit(); long end = System.currentTimeMillis(); //批量保存执行后的时间 System.out.println("执行时长" + (end - start)); //批量 预编译sql一次==》设置参数==》10000次==》执行1次 677 //非批量 (预编译=设置参数=执行 )==》10000次 1121 } finally { openSession.close(); }}mapper和mapper.xml如下
public interface EmployeeMapper { //批量保存员工 Long addEmp(Employee employee);}insert into employee(lastName,email,gender) values(#{lastName},#{email},#{gender})
以上是"Mybatis如何使用ExecutorType.BATCH"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
语句
内容
模式
篇文章
参数
学习
帮助
编译
预处理
业务
事务
办法
员工
性能
情形
方法
时长
时间
易懂
更多
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技图片
新华互联网科技
圆梦互联网科技
互联网扶贫科技
互联网下的科技发展
互联网科技公司怎么样
杭州互联网科技公司
猫创互联网科技
互联网科技视频素材
华中科技有哪些互联网大佬
济南华为互联网科技产业总部基地
互联网系的金融科技公司
和信科技工业互联网
西安小鹰速贷互联网科技有限公司
互联网硬科技公司
吉林省码上互联网科技电话
互联网公司属于科技吗
悟空问答互联网科技
互联网科技创业计划的风险分析
北京瑞云互联网科技有限公司
云信互联网科技有限公司
互联网最新的科技
美国互联网科技
互联网科技有限公司 翻译
现代科技和互联网有关系吗
互联网科技实习生岗位职责
内蒙古九一互联网科技
互联网公司黑科技创始人
工业互联网山东科技大学
小米互联网科技园入驻