您的位置:首页 > 其它

Mybatis 批量查询 Map 嵌套 List

2017-09-29 15:46 726 查看
我们要根据 批量的学校id 来查询,

collecion 是 map的key,

而map的value 就是存放学校id的list。

item 指的是list里的每个元素。

select * from school
where schoolId in
<foreach collection="SCHOOLIDS" index="index" item="item" open="(" close=")" separator=",">
#{item.sid}
</foreach>


ids 是 学校的 id 集合,把每一个放到 map2里, 然后将 map2 放到 schoolids 里。

最后将 schoolids 这个List 放入map 中 ,将map 传入 mybatis 中。

for (int i = 0; i < ids.size(); i++) {
Map<String, String> map2 = new HashMap<String, String>();
map2.put("sid",ids.getString(i) );
schoolids.add(map2);
}
map.put("SCHOOLIDS", schoolids);


"当你直接传递一个 List 实例或者数组作为参数对象传给
MyBatis。当你这么做的时 候,MyBatis 会自动将它包装在一个 Map 中,用名称在作为键。List 实例将会以“list” 作为键,而数组实例将会以“array”作为键。"
http://blog.csdn.net/gufachongyang02/article/details/27186823
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Mybatis 批量查询