java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > mybatis foreach 批量删除

mybatis foreach传两个参数批量删除

作者:ITKEY_

这篇文章主要介绍了mybatis foreach 批量删除传两个参数,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

需求

foreach中要传两个参数,一个是id,一个是list。怎么传呢?

单list的情况

Mapper.java

 /**
     * 批量删除
     * @param teamList
     * @return
     */
    public int batchDeleteBizTeam(List<BizTeam> teamList);

Mapper.xml

  <delete id="batchDeleteBizTeam">
        delete from biz_team where id in
        <foreach item="item" collection="list" separator="," open="(" close=")" index="">
               #{item.id}
        </foreach>
    </delete>

因为我们只传了一个参数,所以这里的collection="list"会自动对应List teamList

多参数+list用map传参

传参地方:

Map params = new HashMap();
params.put("matchId", matchIdLong);
params.put("oeList", oddsEuropeList)

Mapper.java

  /**
     * 批量删除数据
     * @param params
     * @return
     */
    public int batchDeleteOddsEurope(Map params);

Mapper.xml

  <delete id="batchDeleteOddsEurope">
        delete from biz_odds_europe where match_id=#{matchId} and company_id in
        <foreach item="item" collection="oeList" separator="," open="(" close=")" index="">
            #{item.companyId}
        </foreach>
    </delete>

这里的 collection="#{oeList}"就对应Map中的key为oeList的值了。

参考资料

https://www.cnblogs.com/fnlingnzb-learner/p/10566452.html

到此这篇关于mybatis foreach 批量删除 传两个参数的文章就介绍到这了,更多相关mybatis foreach 批量删除内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文