foreach mybatis能遍历map吗

 我来答
就烦条0o
2016-10-22 · 知道合伙人软件行家
就烦条0o
知道合伙人软件行家
采纳数:33315 获赞数:46492
从事多年系统运维,喜欢编写各种小程序和脚本。

向TA提问 私信TA
展开全部
mybatis 遍历map实例

map 数据如下 Map<String,List<Long>>.

测试代码如下:

public void getByMap(){
Map<String,List<Long>> params=new HashMap<String, List<Long>>();
List<Long> orgList=new ArrayList<Long>();
orgList.add(10000003840076L);
orgList.add(10000003840080L);

List<Long> roleList=new ArrayList<Long>();

roleList.add(10000000050086L);
roleList.add(10000012180016L);

params.put("org", orgList);
params.put("role", roleList);

List<BpmDefUser> list= bpmDefUserDao.getByMap(params);
System.out.println(list.size());

}

dao代码如下:

public List<BpmDefUser> getByMap(Map<String,List<Long>> map){
Map<String,Object> params=new HashMap<String, Object>();
params.put("relationMap", map);
return this.getBySqlKey("getByMap", params);

}

xml代码如下:

<select id="getByMap" resultMap="BpmDefUser">

<foreach collection="relationMap" index="key" item="ent" separator="union">
SELECT *
FROM BPM_DEF_USER
where RIGHT_TYPE=#{key}
and OWNER_ID in
<foreach collection="ent" item="id" separator="," open="(" close=")">
#{id}
</foreach>
</foreach>

</select>

index 作为map 的key。item为map的值,这里使用了嵌套循环,嵌套循环使用ent。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式