在Mybatis中傳遞集合的方法主要有兩種方式:使用List或者使用Map。
public List<User> selectUserByIds(List<Integer> ids);
在XML配置文件中,可以使用foreach標簽來遍歷List參數,如下所示:
<select id="selectUserByIds" resultType="User">
SELECT * FROM user WHERE id IN
<foreach item="item" index="index" collection="ids" open="(" separator="," close=")">
#{item}
</foreach>
</select>
public List<User> selectUserByIds(Map<String, Object> map);
在XML配置文件中,可以通過Map的key來獲取集合參數,如下所示:
<select id="selectUserByIds" resultType="User">
SELECT * FROM user WHERE id IN
<foreach item="id" collection="ids" open="(" separator="," close=")">
#{id}
</foreach>
</select>
這兩種方式都可以有效地傳遞集合參數給SQL語句,在實際開發中根據需求選擇合適的方式。