在MyBatis中,可以使用foreach标签来传入数组并遍历。你可以按照以下步骤进行操作:
SELECT * FROM my_table WHERE id IN
<foreach collection="list" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
在这个例子中,list是传入的数组参数的名称,item是在循环中使用的每个数组元素的名称,open指定in语句的开头,close指定结尾,separator指定分隔符。
<select id="getData" parameterType="java.util.List" resultType="com.example.MyTable">
SELECT * FROM my_table WHERE id IN
<foreach collection="list" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</select>
在这个例子中,getData是SQL语句的ID,parameterType指定参数类型为java.util.List,resultType指定返回结果的类型为com.example.MyTable。
List<Integer> ids = Arrays.asList(1, 2, 3, 4);
List<MyTable> data = sqlSession.selectList("getData", ids);
在这个例子中,ids是包含要查询的id的List对象,getData是SQL语句的ID,sqlSession是MyBatis的会话对象,selectList方法用于执行查询并返回结果。
通过以上步骤,你就可以在MyBatis中传入数组并遍历了。