MyBatis - 迭代列表,它是嵌套的foreach循环中HashMap的值

时间:2015-10-06 11:32:55

标签: java list foreach hashmap mybatis

Map<Integer, List<Integer>> myhashmap = new HashMap<Integer, List<Integer>>();

对hashmap的迭代有效,但列表(在item.value中)不起作用。

Exception:
   org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.builder.BuilderException: Error evaluating expression '#{item.value}'.  Return value ({[5800]=null}) was not iterable.

{item.value.iterator()}也不起作用。

{{1}}

其中5800是列表的整数值

感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

<foreach item="element" index="index" collection="mySet.entrySet()" open=" WHERE ((" separator=" OR ("> table.attribute1= #{element.key} 
    <foreach item="item" index="index" collection="element.value" separator=" ," open=" AND table.attribute2 IN (" close="))">
       #{item} 
         </foreach> 
 </foreach>  

这为我修好了!