今天碰到个问题,解决了很久才搞定,来记录下,希望可以帮助到大家
这是一个根据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