当用java向mybatis做复合参数传递时例如 MAP中嵌套list,mybatis在对list进行遍历时可能会抛出该异常。
解决办法:
示例:
请求参数封装:
HashMap<String, Object> map = new HashMap<String, Object>();
List<String> a=new ArrayList<String>();
a.add("请求列表");
map.put("testList","请求列表");
mybatis遍历list:
<if test="testList!= null">
AND (
<![CDATA[
1 <> 1
]]>
<foreach collection="testList" index="index" item="item" open="OR" separator="OR" close="">
LOCATE(#{item,jdbcType=VARCHAR},"值1")
</foreach>
)
</if>
红色部分如果未加入,则很有可能会诱发该异常!