今天碰到个问题,解决了很久才搞定,来记录下,希望可以帮助到大家
这是一个根据list集合的查找数据的 sql,在接收list的时候加了判断 list != ‘ ’ “”,引起了集合与Stirng类型的比较,故报
<select id="selectKeywordByNameList" resultType="com.zenr.mvc.pojo.KeyWord" parameterType="java.util.List">
SELECT count(keyword_name) counter,keyword_name keywordName
from keyword
<if test="list!=null and list.size!=''">
WHERE keyword_name in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
GROUP BY keyword_name;
</if>
</select>
第四行代码判断为' '时报错,解决方案如下
<select id="selectKeywordByNameList" resultType="com.zenr.mvc.pojo.KeyWord" parameterType="java.util.List">
SELECT count(keyword_name) counter,keyword_name keywordName
from keyword
<if test="list!=null and list.size>0">
WHERE keyword_name in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
GROUP BY keyword_name;
</if>
</select>
aa