原因:传递一个 List 实例或者数组作为参数对象传给 MyBatis时,MyBatis 会自动将它包装在一个 Map 中,用名称作为键。
情况一:直接传参Long[]数组
List<SysUserEntity> listByUser(Long[] ids);
MyBatis文件中:collection="array"
o.org_id IN
<foreach item="ids" collection="array" open="(" separator="," close=")">
#{ids}
</foreach>
情况二:使用Query传递数组参数
params.put("ids",ids);
Query query = new Query(params);
MyBatis文件中:collection="ids"
o.org_id IN
<foreach item="ids" collection="ids" open="(" separator="," close=")">
#{ids}
</foreach>
MyBatis参数传递详解

本文详细介绍了在MyBatis中如何通过不同方式传递数组或List类型的参数,并展示了如何在XML映射文件中正确地使用这些参数进行SQL查询。
900

被折叠的 条评论
为什么被折叠?



