MyBatis的foreach標簽用于遍歷集合或數組,并在SQL語句中動態生成對應的參數。以下是foreach標簽的使用方法:
<select id="selectUsersByIdList" resultType="User">
SELECT * FROM users
WHERE id IN
<foreach item="id" collection="idList" open="(" separator="," close=")">
#{id}
</foreach>
</select>
List<Integer> idList = Arrays.asList(1, 2, 3);
List<User> users = sqlSession.selectList("selectUsersByIdList", idList);
在上面的例子中,foreach標簽會循環遍歷idList集合中的元素,并將每個元素插入到SQL語句中的IN條件中。最終生成的SQL語句類似于:SELECT * FROM users WHERE id IN (1, 2, 3)。