invalid comparison: java.util.ArrayList and java.lang.String

今天碰到个问题,解决了很久才搞定,来记录下,希望可以帮助到大家

这是一个根据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

猜你喜欢

转载自blog.csdn.net/javareact/article/details/79046983