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>

总结

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

相关文章

  • MyBatis详细讲解DAO代理的使用

    MyBatis详细讲解DAO代理的使用

    MyBatis允许只声明一个dao接口,而无需写dao实现类的方式实现数据库操作。前提是必须保证Mapper文件中的<mapper>标签的namespace属性值必须要和dao接口的类路径一致,MyBatis容器会自动通过动态代理生成接口的实现类
    2022-04-04
  • 详解Spring中REQUIRED事务的回滚机制详解

    详解Spring中REQUIRED事务的回滚机制详解

    在Spring的事务管理中,REQUIRED是最常用也是默认的事务传播属性,本文就来详细的介绍一下Spring中REQUIRED事务的回滚机制,感兴趣的可以了解一下
    2025-09-09
  • java网络编程之群聊功能

    java网络编程之群聊功能

    这篇文章主要为大家详细介绍了java网络编程之群聊功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • Java Fluent Mybatis 项目工程化与常规操作详解流程篇 上

    Java Fluent Mybatis 项目工程化与常规操作详解流程篇 上

    Java中常用的ORM框架主要是mybatis, hibernate, JPA等框架。国内又以Mybatis用的多,基于mybatis上的增强框架,又有mybatis plus和TK mybatis等。今天我们介绍一个新的mybatis增强框架 fluent mybatis
    2021-10-10
  • Java程序中Doc文档注释示例教程

    Java程序中Doc文档注释示例教程

    这篇文章主要为大家介绍了Java程序中Doc文档注释的示例教程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2021-10-10
  • Spring Boot日志技术logback原理及配置解析

    Spring Boot日志技术logback原理及配置解析

    这篇文章主要介绍了Spring Boot日志技术logback原理及用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • java实现三角形分形山脉

    java实现三角形分形山脉

    这篇文章主要为大家详细介绍了java实现三角形分形山脉,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • Spring Security表单配置过程分步讲解

    Spring Security表单配置过程分步讲解

    SpringSecurity的配置基于WebSecurityConfigurerAdapter的实现类,我们这里主要讲基本配置,即configure(HttpSecurity http)方法的配置,其实大都有默认值,我们可以直接用默认值,也可以自己设置
    2023-01-01
  • java锁synchronized面试常问总结

    java锁synchronized面试常问总结

    这篇文章主要介绍了java锁synchronized面试常问总结分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • Java concurrency集合之ConcurrentSkipListMap_动力节点Java学院整理

    Java concurrency集合之ConcurrentSkipListMap_动力节点Java学院整理

    这篇文章主要为大家详细介绍了Java concurrency集合之ConcurrentSkipListMap的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06

最新评论