mybatis-批量插入
批量插入的语法是这样的,只要在values 后面增加插入的值就可以了。
insert into tbl_emp (emp_id, emp_name, gender,email, d_id) values ( ?,?,?,?,? ) , ( ?,?,?,?,? ) , ( ?,?,?,?,? ) , ( ?,?,?,?,? ) ,
( ?,?,?,?,? ) , ( ?,?,?,?,? ) , ( ?,?,?,?,? ) , ( ?,?,?,?,? ) , ( ?,?,?,?,? ) , ( ?,?,?,?,? )
在Mapper 文件里面,我们使用foreach 标签拼接values 部分的语句:
<!-- 批量插入-->
<insert id="batchInsert" parameterType="java.util.List" useGeneratedKeys="true"><selectKey resultType="long" keyProperty="id" order="AFTER">SELECT LAST_INSERT_ID()</selectKey>insert into tbl_emp (emp_id, emp_name, gender,email, d_id)values<foreach collection="list" item="emps" index="index" separator=",">( #{emps.empId},#{emps.empName},#{emps.gender},#{emps.email},#{emps.dId} )</foreach>
</insert>
Java 代码里面,直接传入一个List 类型的参数。
我们来测试一下。效率要比循环发送SQL 执行要高得多。最关键的地方就在于减少了跟数据库交互的次数,并且避免了开启和结束事务的时间消耗。
mybatis-批量插入相关推荐
- 批量插入数据库语句java_java相关:MyBatis批量插入数据到Oracle数据库中的两种方式(实例代码)...
java相关:MyBatis批量插入数据到Oracle数据库中的两种方式(实例代码) 发布于 2020-7-22| 复制链接 本文通过实例代码给大家分享了MyBatis批量插入数据到Oracle数据库 ...
- mybatis批量插入(insert)和批量更新(update)
文章目录 一.Mybatis批量插入 二.批量更新 前言:这两天在做mybatis批量插入和更新的时候,对这块不是很清楚,所以今天写篇文章,巩固加深印象. 一.Mybatis批量插入 批量插入的sql ...
- oracle批量插入报错,[数据库]Mybatis 批量插入数据 关于Oracle 批量插入报错:ORA
[数据库]Mybatis 批量插入数据 关于Oracle 批量插入报错:ORA 0 2020-08-19 08:00:06 Mybatis 批量插入数据 关于Oracle 批量插入报错:ORA-009 ...
- 【SpringBoot项目中使用Mybatis批量插入百万条数据】
SpringBoot项目中使用Mybatis批量插入百万条数据 话不多说,直接上代码,测试原生批处理的效率 开始测试 背景:因为一些业务问题,需要做多数据源,多库批量查询.插入操作,所以就研究了一下. ...
- MyBatis批量插入(sqlserver BULK INSERT)
MyBatis批量插入: 1. foreach方式 2.sqlsession + sqlsession.flushStatements方式: // SqlSession sqlSessi ...
- MyBatis - 批量插入
由于MyBatis的本质是对JDBC的封装,所以从JDBC的原生来看此问题~ 一.原生JDBC插入两种方式 conn.setAutoCommit(false); //设置手动提交 //预编译sql对象 ...
- Mybatis 批量插入报ORA-00933: SQL 命令未正确结束
Mybatis 批量插入报ORA-00933: SQL 命令未正确结束 错误出现的场景是这样的,将多个月份的1000条数据分别插入到各月份表中. MySQL中,批量插入数据到表,会在一定程度提高效率. ...
- 解决Oracle+Mybatis批量插入报错:SQL 命令未正确结束
Mybatis批量插入需要foreach元素.foreach元素有以下主要属性: (1)item:集合中每一个元素进行迭代时的别名. (2)index:指定一个名字,用于表示在迭代过程中,每次迭代到的 ...
- MyBatis 批量插入数据的 3 种方法
批量插入功能是我们日常工作中比较常见的业务功能之一,之前我也写过一篇关于<MyBatis Plus 批量数据插入功能,yyds!>的文章,但评论区的反馈不是很好,主要有两个问题:第一,对 ...
- Mybatis 批量插入事物问题
一.首先对于批量数据的插入有两种解决方案(下面内容只讨论和Mysql交互的情况) 1)for循环调用Dao中的单条插入方法 2)传一个List<Object>参数,使用Mybatis的批量 ...
最新文章
- 六一:如何在Datawhale开源学习小程序中管
- 程序员编程时戴耳机是在听什么?
- java服务端开发 php_PHP使用thrift做服务端开发
- 体系文件管理解决方案
- nyist -- 组队赛(一)
- linux mmap 内存映射
- python逻辑运算符的使用_总结Python中逻辑运算符的使用
- 「mysql优化专题」90%程序员面试都用得上的索引优化手册(5)
- java 暂停_面试官问我:平常如何对你的Java程序进行调优?
- JavaScript —— Symbol数据类型的拓展
- grib1文件解析 python_python安装读取grib库总结(推荐)
- WINDOWS游戏编程学习笔记(一):Hello Game!
- 读书笔记《松本行弘的程序世界》
- 会议OA之我的审批(查询签字)
- App Store与苹果签名
- 计算机学院的迎新晚会,计算机学院举办“互联青春,拾梦翱翔”迎新晚会
- NetKeeper(创翼)开WIFI方法——2018.5
- spring Boot Configuration Annotation Processor not fount in classpath
- EWM一个仓库号对应ERP多个PLANT的配置
- Redis(10)哨兵