mybatis一对多方式实现批量插入

 更新时间:2023年11月04日 08:40:37   作者:何锦康  
这篇文章主要介绍了mybatis一对多方式实现批量插入,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

mybatis一对多方式批量插入

需求

public class Order {
    private String orderId;
    private List<OrderGoods> orderGoods;
}

public class OrderGoods {
    private String goodsId;
    private String goodsName;
    private float goodsPrice;
    private int quantity;
}

如实体类所示

一个订单编号对应多条商品信息,向数据库新增订单的时候,需要记录每个订单有哪些商品,就有一个订单-商品信息关系表,那么当生成订单的额时候,也需要记录订单-商品信息关系表,

如图所示


在这里插入图片描述

这里的订单id是重复的,每个订单里面的商品信息是一个集合,那么订单-商品信息关系表怎么实现批量插入呢?

实现

<insert id="createOrderGoods" parameterType="Order">
        insert into order_goods values
        <foreach collection='orderGoods'
                 item = 'goods'
                 separator=","
        >
            (#{orderId},#{goods.goodsId},#{goods.goodsName},#{goods.goodsPrice},#{goods.quantity})
        </foreach>
    </insert>

这里将需要循环的集合设置为Order类里面的商品集合属性名也就是orderGoods,在循环的时候第一个订单编号从parameterType传进来的Order里面获取,后面的商品信息从每一个item中获取,即可以完成一对多批量更新

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Spring实战之使用TransactionProxyFactoryBean实现声明式事务操作示例

    Spring实战之使用TransactionProxyFactoryBean实现声明式事务操作示例

    这篇文章主要介绍了Spring实战之使用TransactionProxyFactoryBean实现声明式事务操作,结合实例形式分析了spring使用TransactionProxyFactoryBean实现声明式事务相关配置、接口设置与使用技巧,需要的朋友可以参考下
    2020-01-01
  • java实现的汉字转五笔功能实例

    java实现的汉字转五笔功能实例

    这篇文章主要介绍了java实现的汉字转五笔功能,结合具体实例形式分析了java基于字符串遍历与编码转换等操作实现五笔编码获取的相关操作技巧,需要的朋友可以参考下
    2017-06-06
  • Java 全面掌握网络编程篇

    Java 全面掌握网络编程篇

    网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来。java.net 包中 J2SE 的 API 包含有类和接口,它们提供低层次的通信细节。你可以直接使用这些类和接口,来专注于解决问题,而不用关注通信细节
    2021-10-10
  • idea中使用(Revert Commit)图解

    idea中使用(Revert Commit)图解

    这篇文章主要介绍了idea中使用(Revert Commit)图解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • 详解Spring AOP 实现“切面式”valid校验

    详解Spring AOP 实现“切面式”valid校验

    本篇文章主要介绍了详解Spring AOP 实现“切面式”valid校验,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • Java中处理邮件附件的方法(本地文件和在线URL)

    Java中处理邮件附件的方法(本地文件和在线URL)

    这篇文章主要介绍了在Java中处理邮件附件的方法,针对本地文件和在线URL两种附件来源,提供了两种解决方案,并提供了下载文件和发送邮件的代码示例,需要的朋友可以参考下
    2025-03-03
  • Maven下载和配置环境教程

    Maven下载和配置环境教程

    这篇文章主要为大家详细介绍了Maven下载和配置环境教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • spring4新特性之web开发增强

    spring4新特性之web开发增强

    这篇文章主要介绍了spring4新特性之web开发增强的相关资料,需要的朋友可以参考下
    2017-09-09
  • Java基础之JDBC的数据库连接与基本操作

    Java基础之JDBC的数据库连接与基本操作

    这篇文章主要介绍了Java基础之JDBC的数据库连接与基本操作,文中有非常详细的代码示例,对正在学习java基础的小伙伴们也有很好的帮助,需要的朋友可以参考下
    2021-05-05
  • idea配置SVN的教程

    idea配置SVN的教程

    文章介绍了如何安装和配置TortoiseSVN以及在IntelliJ IDEA中配置SVN,首先,安装TortoiseSVN时需要选择与电脑配置相匹配的版本,并确保安装命令行客户端工具,其次,在IntelliJ IDEA中配置SVN时,需要指定SVN可执行文件的路径
    2025-01-01

最新评论