MyBatis-Exception:org.apache.ibatis.exceptions.PersistenceException

错误信息如下:

HTTP Status 500 - org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException:

type Exception report

message org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException:

description The server encountered an internal error that prevented it from fulfilling this request.

exception

java.lang.RuntimeException: org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
### Error querying database. Cause: java.lang.reflect.UndeclaredThrowableException
### The error may exist in class path resource [mybatis/mapper/SysTradeTradeMapper.xml]
### The error may involve com.zito.b2c.order.mapper.SysTradeTradeMapper.getOperatingSituation-Inline
### The error occurred while setting parameters
### Cause: java.lang.reflect.UndeclaredThrowableException
### Caused by: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String

通过查看错误信息,可以发现”The error occurred while setting parameters“,错误是参数传入的时候出的错。

Mapper接口方法如下:

public Map<String,String> queryOrder(@Param("shopId") int shopId, @Param("shopName") String shopName);

Mapper.xml中方法的配置:

<select id="queryOrder"  parameterType="String"  resultType="java.util.Map">

</select>

因为传入的参数既有Sting又有int,而我们在xml中配置的传入参数类型只有Sting,所以会报传入参数类型不匹配。

再由对个参数传入,并且传入参数的类型不一致时,可以去掉  parameterType   

 

    原文作者:MyBatis
    原文地址: https://www.cnblogs.com/lashou/p/6089011.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞