nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping

今天mybatis报了个错误

org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property='InfoId', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId='null', jdbcTypeName='null', expression='null'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long

 

好像是说转型错误。

把mapper.java

mapper.xml

和实体查了一下。

最后找到原因

mapper.java里入参为int型

XXXDTO getXXXInfoId(int xxxInfoId);

到mybatis的mapper.xml入参定义成了long,导致了上面的错误。

<select id="getXXXInfoId" parameterType="long" resultMap="XXXResultMap">

把long改成int型,问题解决。

<select id="getXXXInfoId" parameterType="int" resultMap="XXXResultMap">

 

posted @ 2019-07-31 16:49  阿米诚  阅读(33530)  评论(0编辑  收藏  举报