要在MyBatis中查询集合数据,可以使用MyBatis提供的foreach标签来实现。下面是一个示例:
首先,在Mapper XML文件中编写SQL语句:
<select id="selectUsersByIds" resultType="User" parameterType="java.util.List">
SELECT * FROM users WHERE id IN
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</select>
然后,在Java代码中调用该SQL语句:
List<Integer> ids = Arrays.asList(1, 2, 3);
List<User> users = sqlSession.selectList("selectUsersByIds", ids);
在这个示例中,我们通过传入一个包含id的List,使用foreach标签在SQL语句中动态拼接id值,实现了查询多个id对应的用户信息。