码农 + 关注

签名:熬夜写个代码吧

Could not set parameters for mapping: ParameterMapping

发表于 20天前   156次查看    0评论  1 赞

今天在做项目的时候报了以下错误:

nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property='shopName', mode=IN, javaType=class java.lang.Object, jdbcType=VARCHAR, numericScale=null, resultMapId='null', jdbcTypeName='null', expression='null'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #2 with JdbcType VARCHAR . Try setting a different JdbcType for this parameter or a different configuration property. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #2 with JdbcType VARCHAR . Try setting a different JdbcType for this parameter or a different configuration property


然后纠结了半小时愣是没找到解决方法,最后把目光锁定在了:

Could not set parameters for mapping: ParameterMapping

意思就是mybatis SQL语句未指定数据类型,所以给出了以下解决方案:

${shopName,jdbcType=VARCHAR}

在传的值后面加上数据类型就可以了!


原因:

经过对代码分析,是由于未指定传入参数pxh的类型,当mybatis接收到null时,无法将其正确的进行解析,进而导致上述异常。

1人已赞


本文由Fun言网 – 码农创作,转载请务必附上本文链接和出处,欢迎参与我们的付费投稿计划


你还没有登录,请先 登录注册!
文章评论0