欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Mybatis 中的sql批量修改方法实现

程序员文章站 2024-03-08 14:32:40
在项目中遇到需要批量更新的功能,原本想的是在java中用循环访问数据库去更新,但是心里总觉得这样做会不会太频繁了,太耗费资源了,效率也很低,查了下mybatis的批量操作,...

在项目中遇到需要批量更新的功能,原本想的是在java中用循环访问数据库去更新,但是心里总觉得这样做会不会太频繁了,太耗费资源了,效率也很低,查了下mybatis的批量操作,原来确实有<foreach>标签可以做到。

dao  层接口:

public class demo{ 
  private int id; 
  private string name; 
  private string sex; 
}
<pre name="code" class="html">public int update(@param("list") list<demo> list);</pre><br> 
<br> 
<p></p> 
<pre></pre> 
<br> 
xml 文件: 
<p></p> 
<p><update id="update" parametertype="java.util.list"><br> 
</p> 
<p>update bpm_info set message_id= 1 where id in <br> 
  <span style="white-space:pre"></span><foreach collection="list" index="index" item="item" open="(" separator="," close=")"><br> 
  <span style="white-space:pre"></span>#{item.id}<br> 
  <span style="white-space:pre"></span></foreach><br> 
</update><br> 
</p> 
<p><br> 
</p> 
<p>以上这种做法适用情况是:根据传入的list参数集合中的每一个id遍历去更新指定字段。。</p> 
<p><br> 
</p> 
<p>其中:</p> 
<p>1.collection 中要对应接口中集合的名称</p> 
<p>2.item 是集合的别名</p> 
<p><br> 
</p> 

以上所述是小编给大家介绍的mybatis 中的sql批量修改方法实现,希望对大家有所帮助