mybatis报错:java.lang.IllegalArgumentException: invalid comparison: java.util.Arrays$ArrayList and java.lang.String

一开始,我的写法是在java中给这个变量赋值时,直接分割,引号包起来,然后再mybatis中的这个SQL中直接用${}引用,效果是能达到,后被告知这样会有被攻击的可能。便改成:赋值前转成list,然后再mybatis中遍历。

遍历:

一开始里面没用 ,jdbcType=VARCHAR ,报错....jdbcType...,网上找了需要加上这个。

报错:

原因:传入的东西是list,不能用“”来比较

修改:那个判断条件“ != null ” 去掉或者改成size都可

原文地址:https://www.cnblogs.com/rfzhu/p/10172391.html

时间: 2024-10-07 03:07:36

mybatis报错:java.lang.IllegalArgumentException: invalid comparison: java.util.Arrays$ArrayList and java.lang.String的相关文章

mybatis的判定时间字段问题 java.lang.IllegalArgumentException: invalid comparison: cn.hutool.core.date.DateTime and java.lang.String

今天听组员说: mybatis在3.30版本及以上判定时间时 <if test="date_time != null and date_time != '' "> date_time, </if> java.lang.IllegalArgumentException: invalid comparison: cn.hutool.core.date.DateTime and java.lang.String 去掉 and date_time != ' ' 就可以正

mybatis报错: java.lang.IllegalArgumentException invalid comparison: java.util.Date and java.lang.String

原因是在使用<if> 进行条件判断时, 将datetime类型的字段与 ' ' 进行了判断,导致的错误 解决, 只使用  <if test="createTime != null"></if> 做判断就行了 详细可参考: https://blog.csdn.net/wanghailong_qd/article/details/50673144 原文地址:https://www.cnblogs.com/gczmn/p/11880972.html

mybatis报Error updating database. Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String

mybatis 3.3.0中对于时间参数进行比较时的一个bug. 如果拿传入的时间类型参数与空字符串''进行对比判断则会引发异常. 所以在上面的代码中去该该判断, 只保留非空判断就正常了 <if test="createTime != null and createTime !='' " >  date(create_time) = date(#{createTime,jdbcType=TIMESTAMP}) </if> 改为 <if test="

Mybatis 报错 There is no getter for property named &#39;***&#39; in &#39;class java.lang.String&#39;

在mapper.xml中 , 如果单参数是String类型 , 且在sql语句中对参数进行了判断 , 如下 when 中的判断 , 如果出现 if 判断也是一样的.都需要把判断中的参数用 _parameter 来代替 ,. 另外orcal中判断字段是否为空需要使用 is null , 同理,判断不为空使用 is not null . 错误查询: <select id = "select" resultMap="ResultMap" parameterType=

解决kylin报错:Failed to create dictionary on &lt;db&gt;.&lt;table&gt;, Caused by: java.lang.IllegalArgumentException: Too high cardinality is not suitable for dictionary

报错信息: 2017-05-13 15:14:30,035 DEBUG [pool-9-thread-10] dict.DictionaryGenerator:94 : Dictionary class: org.apache.kylin.dict.TrieDictionary 2017-05-13 15:14:30,036 ERROR [pool-9-thread-10] common.HadoopShellExecutable:65 : error execute HadoopShellEx

【MyEcplise】导入项目报错:Errors running builder &#39;JavaScript Validator&#39; on project &#39;项目名&#39;. java.lang.ClassCastException

导入项目报错:Errors running builder 'JavaScript Validator' on project '项目名'. java.lang.ClassCastException 解决方法: project -->Properties Builbers -->JavaScript Validator勾选去掉 解决问题! [MyEcplise]导入项目报错:Errors running builder 'JavaScript Validator' on project '项目

mybatis报错Mapped Statements collection does not contain value for com.inter.IOper

首页 > 精品文库 > mybatis报错Mapped Statements collection does not contain value for com.inter.IOper mybatis报错Mapped Statements collection does not contain value for com.inter.IOper 2015-04-09 浏览(52) [摘要:正在顺序挪用IOperation接心中的getAllItems方式时,涌现了以下毛病: Exception

Mybatis报错:Parameter &#39;list&#39; not found. Available parameters are [groupList, param1]

GroupDao.java 里面定义的方法: void batchInsertLog(@Param("groupList") List<MktPromotionIntegralLog> groupList); 修改前的GroupMapper.xml <insert id="batchInsertLog" parameterType="java.util.List"> INSERT INTO table (ps_id,goo

mybatis报错:A query was run and no Result Maps were found for the Mapped Statement、、Property [login_ip] not found on type [com.thinkgem.jeesite.common.permission.entity.PremissUser]问题解决

今天在做ssm项目的时候出现了: 先是出现 了错误: mybatis报错:A query was run and no Result Maps were found for the Mapped Statement 这是因为Dao.xml中的select标签中必须指定要返回的值的类型(注意:是返回值的单个类型,即如果你是返回一个List<User>的话,需要指定的是User) 具体的这种错误的解决办法见:https://www.cnblogs.com/isme-zjh/p/11757155.h