Mybatis中foreach遍历集合
1、在mybatis中,如果我们需要查询in集合中的数据,需要使用foreach遍历集合。
<!--新增-->
<if test="consumList!=null and consumList.size() > 0">
and oilcard_consum_id in
<foreach collection="consumList" item="item"
index="index" open="(" separator="," close=")">
#{item}
</foreach>
</if>

2、其中<foreach collection="consumList" item="item" open="(" separator="," close=")"> #{item} </foreach>
中的collection标识我们程序传值过来的集合。

3、<foreach collection="consumList" item="item" open="(" separator="," close=")"> #{item} </foreach>
标签中的open表示我们遍历的集合以什么字符开始。

4、<foreach collection="consumList" item="item" open="(" separator="," close=")"> #{item} </foreach>
标签中的close表示我们遍历的集合以什么字符结尾。

5、<foreach collection="consumList" item="item" open="(" separator="," close=")"> #{item} </foreach>
中item是给我们集合遍历取一个变量。

6、我们整个sql可能是如下的语句:
<if test="consumList!=null and consumList.size() > 0">
and oilcard_consum_id in
<foreach collection="consumList" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach></if>
select * from 表名 where oilcard_consum_id in (1,2,3)
