大家好,我是烤鸭,记录一个初级异常,百度搜索结果不多:
Caused by: org.apache.ibatis.reflection.ReflectionException:
Error instantiating class com.xxx.xxx with invalid types 。
java.lang.NoSuchMethodException:
com.xxx.xxx.
(java.lang.Integer, java.lang.String, java.lang.String, java.lang.String, java.lang.String,
java.lang.String, java.lang.Integer, java.math.BigDecimal, java.math.BigDecimal,
java.math.BigDecimal, java.math.BigDecimal, java.lang.Integer, java.lang.String,
java.lang.Integer, java.lang.String, java.math.BigDecimal, java.math.BigDecimal,
java.math.BigDecimal, java.lang.String, java.math.BigDecimal, java.lang.Integer,
java.lang.String, java.lang.String, java.lang.String, java.lang.String,
java.lang.String, java.lang.Integer, java.lang.String, java.lang.Integer,
java.lang.String, java.lang.String, java.util.Date, java.lang.String,
java.lang.Integer, java.lang.Integer, java.util.Date, java.lang.String,
java.util.Date, java.lang.String, java.lang.Integer, java.lang.String,
java.lang.Integer, java.util.Date, java.util.Date, java.lang.String)
如果出现init后面括号一堆参数的话,检查一下你的pojo是否有提示的这个构造器。
一般就创建全参构造器。
eclipse 全捷键是:ALT+SHIFT+S -> O
idea 快捷键是:ALT+INSERT。
其他:
一般来说,org.apache.ibatis.reflection.ReflectionException。
mybatis异常就是几点:
1. xml和dao是否映射,方法是否都找得到,方法名称是否都一样。
2. xml和pojo是否正常映射。
3. 如果报查询或者结果参数异常,parameterType或者resultType类型不对。改成resultMap封装到对象试试。
4. xml中方法名称不能重复。
暂时想到的就这些,遇到新的问题再更新吧。