SELECT*FROMproduct_db.productinfo piWHERE pi.isvalid = 1AND pi.id IN (22, 60) 下面将使用一个简单的过程来演示这个操作
下面这个是mybatis的映射文件
<select id="queryAllOpenProduct" parameterType="com.tims.open.domain.OpenProductQueryCondition"resultType="com.tims.open.domain.OpenProduct">SELECT*FROMproduct_db.product pWHEREp.isvalid = 1<if test="list != null"><foreach collection="list" index="index" item="item" separator="," open="AND p.id IN (" close=")">#{item}</foreach></if></select>下面是我们的查询condition类Public OpenProductQueryCondition{private Integer productId; private List<Integer> list;}下面我们对IN操作进行分析
<foreach collection="list" index="index" item="item" separator="," open="AND p.id IN (" close=")">#{item}</foreach>list 就是传入的condition中的list,mybatis将会遍历中集合中的元素
index 可以添加也可以不添加
item 你将要遍历出元素的别名
open 开始的位置
close 什么时候结束
原文:https://www.cnblogs.com/zhuyeshen/p/11981707.html