java mybatisplus批量新增和更新方式

 更新时间:2025年09月23日 08:38:26   作者:顾米楠  
文章主要介绍使用Javamapper框架通过XML配置实现批量新增和更新操作,包含单字段更新(如删除标记)及多字段更新的方法,但内容存在格式混乱问题,需进一步明确具体实现细节

java mybatisplus批量新增和更新

1.批量新增

  • java mapper:
/**
* 批量插入
*/
void batchInsert(@Param("list") List<DeductionDetailEntity> insertList);
  • xml:
<insert id="batchInsert">
        insert into meter_contract_deduction_detail
        (id,epid,dept_id,deduction_id,deduction_name,exchange_rate,
         deduction_amount,deduction_remark,is_delete,create_by,
        create_at,update_by,update_at)
        values
        <foreach collection="list" item="item" index="index" separator=",">
            (#{item.id},#{item.epid},#{item.deptId},
            #{item.deductionId},#{item.deductionName},#{item.exchangeRate},
            #{item.deductionAmount},#{item.deductionRemark},#{item.isDelete},#{item.createBy},
            #{item.createAt},#{item.updateBy},#{item.updateAt})
        </foreach>
    </insert>

2.批量更新

2.1 批量更新一个字段 比如批量更新删除字段

  • java mapper :
/**
     * 批量删除
     *
     * @param ids
     * @return
     */
    int batchDelete(@Param("list") List<String> ids);
  • xml : 
<update id="batchDelete">
        update meter_contract_deduction_detail SET is_delete = 1
        where id in
        <foreach collection = 'list' item = 'item' index='index' open = '(' separator= ',' close = ')' >
            #{item}
        </foreach>
    </update>

2.2 批量更新多个字段

  • java mapper : 
void batchUpdate(@Param("referenceIds") List<String> referenceIds, @Param("approvalStatus") Integer approvalStatus,
                     @Param("processId") String processId);
  • xml : 
<!--批量更新-->
    <update id="batchUpdate">
    UPDATE meter_contract_prod_value
    SET approval_status = #{approvalStatus}, process_id = #{processId}
    WHERE id in
    <foreach collection="referenceIds" item="item" index="index" open = '(' separator= ',' close = ')'>
        #{item}
    </foreach>
    </update>

总结

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

相关文章

  • Spring cloud alibaba之Ribbon负载均衡实现方案

    Spring cloud alibaba之Ribbon负载均衡实现方案

    Spring cloud Ribbon是基于Netflix Ribbon实现的一套客户端的负载均衡工具,Ribbon客户端提供一系列完善的配置,如超时、重试等,Ribbon也可以实现自己的负载均衡算法,感兴趣的朋友跟随小编一起看看吧
    2021-07-07
  • 基于java实现简单的图片类别识别

    基于java实现简单的图片类别识别

    这篇文章主要为大家详细介绍了如何基于java实现简单的图片类别识别功能,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-12-12
  • Java实现斗地主小游戏

    Java实现斗地主小游戏

    这篇文章主要为大家详细介绍了Java实现斗地主小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06
  • Java探索之Thread+IO文件的加密解密代码实例

    Java探索之Thread+IO文件的加密解密代码实例

    这篇文章主要介绍了Java探索之Thread+IO文件的加密解密代码实例,具有一定参考价值,需要的朋友可以了解下。
    2017-10-10
  • Java反射设置/获取对象属性值三种方式

    Java反射设置/获取对象属性值三种方式

    这篇文章主要给大家介绍了关于Java反射设置/获取对象属性值的三种方式,反射机制的用途非常多,比如获取方法,属性名和属性值等,甚至可以获取标签等标签属性,需要的朋友可以参考下
    2023-11-11
  • SpringBoot集成单点登录CAS的方法实现

    SpringBoot集成单点登录CAS的方法实现

    本文主要介绍了SpringBoot集成单点登录CAS的方法实现,包括CAS的基本概念、集成步骤、具体代码示例等,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
    2024-03-03
  • des加密解密JAVA与.NET互通实例

    des加密解密JAVA与.NET互通实例

    这篇文章主要介绍了des加密解密JAVA与.NET互通实例,大家参考使用吧
    2013-12-12
  • SpringBoot整合Caffeine使用示例

    SpringBoot整合Caffeine使用示例

    Spring Boot 和 Caffeine 可以很容易地进行整合,Caffeine 是一个现代化的 Java 缓存库,提供了高性能和灵活的缓存策略,本文给大家介绍了SpringBoot整合Caffeine使用示例,需要的朋友可以参考下
    2024-07-07
  • Hibernate持久化对象生命周期原理解析

    Hibernate持久化对象生命周期原理解析

    这篇文章主要介绍了Hibernate持久化对象生命周期原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • MyBatis使用注解开发实现步骤解析

    MyBatis使用注解开发实现步骤解析

    这篇文章主要介绍了MyBatis使用注解开发实现步骤解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08

最新评论