mybatis批量更新

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis批量更新相关的知识,希望对你有一定的参考价值。

有时候,要对数据库批量更新,假如写一个条件更新一次,那代码看起来重复了,这时候可以采用批量操作

1 在配置连接数据库url后面带一个参数 &allowMultiQueries=true,表示允许批量操作,例 jdbc:mysql://localhost:3306/mysqlTest?characterEncoding=utf-8&allowMultiQueries=true

2 Dao写法

/**
     * 批量更新新库存
     * @param list
     * @return
     */
    int updateNewStock(@Param(value = "list") List<GreenBeanMsg> list);

 

3 Xml写法

<update id="updateNewStock" parameterType="java.util.List">
        <foreach collection="list" item="bean" index="index" open="" close="" separator=";">
            UPDATE green_beans
            <set>
                stock=#{bean.stock}
            </set>
            <where>
                beanUid = #{bean.beanUid}
            </where>
        </foreach>
  </update>

 

注意的地方:我传入的是一个集合,于是在dao层写的方法里加上@Param(value“list”),mybatis将传入的参数看做是一个集合list了。于是,在foreach中的collectio中就要写作“list”;parameterType也定义为"java.util.List"

原文链接:https://blog.csdn.net/ty0903csdn/article/details/81779557

以上是关于mybatis批量更新的主要内容,如果未能解决你的问题,请参考以下文章

mybatis+mysql批量插入和批量更新

MyBatis批量新增和更新

javamybatis在使用mybatis进行批量插入,批量更新等批量操作时,切割In集合List进行分批批量操作的java中的切割代码

第五章 mybatis批量更新update

mybatis 批量更新数据 mysql批量更新数据

mybatis 批量更新update详解