问题描述:
在开发过程中由于对字段的进行了修改(由原来的只支持单个值输入,且是字符串型的;变成可支持字符串1,2或者1,3 2,3 等组合),导致页面无法正常加载。发现原因是下面这段Mybatis无法实现需要的功能。
部分代码如下:
<!-- 使用字符串切割成字符串数组,但是报错-->
<if test="type!= null">and o.type in
<foreach item="item" index="index" collection="type.split(',')" open="(" separator="," close=")" >
#{item}
</foreach>
</if>
报错日志如下
Caused by: org.apache.ibatis.exceptions.PersistenceException:
Error querying database. Cause: java.lang.NumberFormatException: For input string: “1,2”
Cause: java.lang.NumberFormatException: For input string: “1,2”
at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectL