MyBatis foreach标签循环迭代集合对象实现批量删除

来源:互联网 发布:linux redhat改中文 编辑:程序博客网 时间:2024/05/19 09:01

mybatis中可以foreach标签对java传过来的集合对象进行循环迭代,具体用法是collection属性传递的为集合对象,item为每次循环的值或对象,open属性为语句的开始,close属性为语句的结束,separator属性表示字符串的分隔符。这样就可以使用sql语句中的in字句进行子查询。

例如:

可以通过对传入的参数进行循环,然后拼成子查询语句,从而进行删除多篇文章。(注意id前面是用#{id}这一点和iBatis中是不同的(iBatis中是 #id#))

mybatis_article.xml:

  <delete id="deleteArticlesByIds" parameterType="hashmap">

    delete from article_info where id in 

    <foreach item="id" collection="idList" open="(" separator="," close=")">

              #{id}

           </foreach>

    </delete>

0 0