当前位置 : 主页 > 编程语言 > java >

Mybatis传入List实现批量更新的示例代码

来源:互联网 收集:自由互联 发布时间:2021-04-10
Dao层写法 /** * 批量更新新库存 * @param list * @return */ int updateNewStock(@Param(value = "list") ListGreenBeanMsg list); xml具体实现代码 update id="updateNewStock" parameterType="java.util.List" foreach collection="list"

Dao层写法

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

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"。

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

到此这篇关于Mybatis传入List实现批量更新的示例代码的文章就介绍到这了,更多相关Mybatis传入List批量更新内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

网友评论