zoukankan      html  css  js  c++  java
  • mybatis 传入集合参数遍历 查询总结

    出自:http://blog.csdn.net/u013628152/article/details/51184641

    1. findByIds(List ids)

    如果参数的类型是List, 则在使用时,collection属性要必须指定为 list

    <select id="findByIdsMap" resultMap="BaseResultMap">  
     Select  
     <include refid="Base_Column_List" />  
     from jria where ID in  
     <foreach item="item" index="index" collection="list" open="(" separator="," close=")">  
      #{item}  
     </foreach>  
    </select>

    2:findByIds(Long[] ids)

    如果参数的类型是Array,则在使用时,collection属性要必须指定为 array

    <select id="findByIdsMap" resultMap="BaseResultMap">  
        select  
        <include refid="Base_Column_List" />  
        from tabs where ID in  
        <foreach item="item" index="index" collection="array" open="(" separator="," close=")">  
         #{item}  
        </foreach>  
    </select>

    3. findByIds(String name, Long[] ids)

    当查询的参数有多个时: 
    这种情况需要特别注意,在传参数时,一定要改用Map方式, 这样在collection属性可以指定名称

     Map<String, Object> params = new HashMap<String, Object>(2);
     params.put("name", name);
     params.put("ids", ids);
     mapper.findByIdsMap(params);
    <select id="findByIdsMap" resultMap="BaseResultMap">  
         select  
         <include refid="Base_Column_List" />  
         from tabs where 
         name = #{name}
         and ID in  
         <foreach item="item" index="index" collection="ids" open="(" separator="," close=")">  
          #{item}  
         </foreach>  
    </select> 
     
  • 相关阅读:
    ubuntu18.04 常用命令
    docker常用命令
    git
    y7000 intel nvidia 双显卡安装Ubuntu16.04
    linux中fork() 函数详解
    理解GBN协议
    C++ sort
    最近点对-分治
    方便查看 linux/kernel/system_call.s
    方便查看 linux/kernel/asm.s
  • 原文地址:https://www.cnblogs.com/onlymate/p/7535724.html
Copyright © 2011-2022 走看看