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中获取,即可以完成一对多批量更新

总结

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

相关文章

  • Springboot开发之利用Docker和Kubernetes部署微服务

    Springboot开发之利用Docker和Kubernetes部署微服务

    这篇文章主要介绍了如何将Spring Boot开发的微服务通过Docker容器化,并使用Kubernetes进行部署和管理,帮助读者掌握现代云原生应用的完整开发部署流程,有需要的可以了解下
    2025-03-03
  • Java之Spring AOP 实现用户权限验证

    Java之Spring AOP 实现用户权限验证

    本篇文章主要介绍了Java之Spring AOP 实现用户权限验证,用户登录、权限管理这些是必不可少的业务逻辑,具有一定的参考价值,有兴趣的可以了解一下。
    2017-02-02
  • 探究springboot中的TomcatMetricsBinder

    探究springboot中的TomcatMetricsBinder

    springboot的TomcatMetricsBinder主要是接收ApplicationStartedEvent然后创建TomcatMetrics执行bindTo进行注册,TomcatMetrics主要注册了globalRequest、servlet、cache、threadPool、session相关的指标,本文给大家介绍的非常详细,需要的朋友参考下吧
    2023-11-11
  • springboot集成测试里的redis

    springboot集成测试里的redis

    这篇文章主要介绍了springboot集成测试里的redis,本文给大家分享了源码,添加依赖添加mock的方法,需要的朋友可以参考下
    2018-11-11
  • java中对象转json字符串的几种常用方式举例

    java中对象转json字符串的几种常用方式举例

    这篇文章主要给大家介绍了关于java中对象转json字符串的几种常用方式,在Java中可以使用许多库将对象转换为JSON字符串,其中最常用的是Jackson和Gson,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-10-10
  • jpa介绍以及在spring boot中使用详解

    jpa介绍以及在spring boot中使用详解

    最近在项目中使用了一下jpa,发现还是挺好用的。这里就来讲一下jpa以及在spring boot中的使用。在这里我们先来了解一下jpa,希望能给你带来帮助
    2021-08-08
  • IntelliJ IDEA创建maven多模块项目(图文教程)

    IntelliJ IDEA创建maven多模块项目(图文教程)

    这篇文章主要介绍了IntelliJ IDEA创建maven多模块项目(图文教程),非常具有实用价值,需要的朋友可以参考下
    2017-09-09
  • 详解SpringBoot实现事件同步与异步监听

    详解SpringBoot实现事件同步与异步监听

    这篇文章主要通过示例为大家详细介绍了SpringBoot中的事件的用法和原理以及如何实现事件同步与异步监听,快跟随小编一起学习学习吧
    2022-06-06
  • Java线程间共享实现方法详解

    Java线程间共享实现方法详解

    这篇文章主要介绍了Java线程间共享实现方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • SpringBoot测试junit遇到的坑及解决

    SpringBoot测试junit遇到的坑及解决

    这篇文章主要介绍了SpringBoot测试junit遇到的坑及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01

最新评论