背景:电商项目的订单管理模块实现创建订单业务逻辑时,一个订单对应Order对应多个订单子明细OrderItem,创建订单成功需要对orderItem子明细表进行批量插入,OrderItemMapper如下:

 void batchInsert(@Param("orderItemList") List<OrderItem> orderItemList);

对应的OrderItemMapper.xml如下,collection对应的是传入的对象orderItemList,注意这里的foreach标签里并没有open和close,如果添加open=“(”  colse=")"结果会报错,正确的是直接将括号放在下面,如下所示:

<!--批量插入--><insert id="batchInsert" parameterType="list">insert into  tb_order_item(id,order_no,user_id,product_id,product_name,product_image,unit_price,total_price,quantity,create_time,update_time)values<foreach collection="orderItemList" index="index" item="item" separator=",">(#{item.id},#{item.orderNo},#{item.userId},#{item.productId},#{item.productName},#{item.productImage},#{item.unitPrice},#{item.totalPrice},#{item.quantity},now(),now())</foreach></insert>

Mybatis的批量插入的正确姿势相关推荐

  1. mysql基础----mybatis的批量插入(一)

    这里面记录一下使用mybatis处理mysql的批量插入的问题,测试有可能不准.只愿世间风景千般万般熙攘过后,字里行间,人我两忘,相对无言. mybatis的批量插入 我们的测试主体类是springb ...

  2. java应用程序接口批量访问_spring中使用mybatis实现批量插入的示例代码

    有3种实现方式:foreach,spring事务,以及ExecutorType.BATCH. 1. foreach方式 这种方式实际是对SQL语句进行拼接,生成一个长长的SQL,对很多变量进行绑定.如 ...

  3. mybatis+oracle批量插入报不符合协议和sql未正确结束

    在Java中循环save,需要加useGeneratedKeys="false",否则报错不符合协议 mybatis批量插入,也需要在insert里加入 useGeneratedK ...

  4. Mybatis foreach 批量插入

    在mybatis中可以使用foreach标签做批量插入和更新操作,以批量插入为例: <insert id="insertMsg" parameterType="xz ...

  5. oracle批量插入报错,MyBatis Oracle批量插入数据

    导语:在开发中或多或少都会遇到数据批量插入的功能,最近我在做项目的过程中就遇到了这样一个问题.上传Excel文件,解析文件内容并将解析的内容插入数据库. 思路分析 1.解析Excel文件 Excel文 ...

  6. springmvc+mybatis+ajax 批量插入数据

    2019独角兽企业重金招聘Python工程师标准>>> 批量插入.AJAX发起请求,核心代码如下: var mids = new Array(); for (var i=0; i&l ...

  7. Java通过Mybatis实现批量插入数据到Oracle中

    最近项目中遇到一个问题:导入数据到后台并将数据插入到数据库中,导入的数据量有上万条数据,考虑采用批量插入数据的方式: 结合网上资料,写了个小demo,文章末尾附上demo下载地址 1.新建项目:项目目 ...

  8. Mybatis的批量插入数据库的两种方法及代码自动生成工具的使用方法

    文章目录 常规批量插入.(通过foreach,生成很长的SQL) ExecutorType.BATCH方式执行批量操作 在这里简单介绍一下,自动生成工具的使用方法 常规批量插入.(通过foreach, ...

  9. tk.mybatis的批量插入扩展

    当前的tkmybatis插件,默认的批量插入功能,是需要自动生成主键的(tk.mybatis.mapper.common.special.InsertListMapper),不能通过调用者自己指派主键 ...

最新文章

  1. [SOJ1039]Phone Home(深搜,染色问题)
  2. 在python下实现ssh出现错误:ModuleNotFoundError: No module named ‘cryptography‘
  3. lt;xliff:ggt;标签
  4. 关于C#数据类型的一点认识
  5. html5 indexeddb 排序,HTML5 IndexedDB,Web SQL数据库和浏览器大战
  6. postfix 部署ssl后还是25_宝塔面板的邮局管理器Postfix无法启动解决办法
  7. Javaweb练手项目
  8. chmod命令使用详解
  9. 如何将秘钥分发到多台机器
  10. pycharm 快捷键设置为eclipse一样
  11. JAVA经典集合框架学习笔记——HashMap的底层实现原理
  12. 【2019银川网络赛:L】Continuous Intervals(线段树区间处理+单调栈+思维)
  13. oracle查询分区表分区,查询分区表(查看oracle分区表)
  14. Celery+django+redis异步执行任务
  15. Openstack 组件Placement部署思路过程
  16. TP-LINK无线路由器配置解读
  17. bit Byte bps Bps
  18. DOXYGEN简明实用教程
  19. 非法终端接入管控的三部曲:控、查、导
  20. QT+OSG/osgEarth编译之三十八:Snappy+Qt编译(一套代码、一套框架,跨平台编译,版本:Snappy-1.1.9)

热门文章

  1. 什么是WordPress
  2. Android上层与驱动交互完整篇(一)I2C设备驱动篇
  3. Python中 whl包、tar.gz包的区别
  4. xcode各项配置详解
  5. 读书笔记:《冯唐成事心法》
  6. java开发规范--编程规约--集合处理
  7. Dell服务器安装EXSI系统
  8. 必读论文|百篇最值得一读的“认知图谱”经典论
  9. 这几款软件,你千万别装
  10. echarts 堆叠柱状图label显示总和