大家好,又见面了,我是你们的朋友全栈君。
报错信息(捡重要的):
java.lang.NoSuchMethodException: com.mmall.pojo.OrderItem.<init>(java.lang.Integer, java.lang.Integer, java.lang.Long, java.lang.Integer, java.lang.String, java.lang.String, java.math.BigDecimal, java.lang.Integer, java.math.BigDecimal, java.util.Date, java.util.Date)
at java.lang.Class.getConstructor0(Class.java:3082)
at java.lang.Class.getDeclaredConstructor(Class.java:2178)
at org.apache.ibatis.reflection.factory.DefaultObjectFactory.instantiateClass(DefaultObjectFactory.java:68)
at org.apache.ibatis.reflection.factory.DefaultObjectFactory.create(DefaultObjectFactory.java:50)
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.createParameterizedResultObject(DefaultResultSetHandler.java:630)
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.createResultObject(DefaultResultSetHandler.java:595)
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.createResultObject(DefaultResultSetHandler.java:574)
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.getRowValue(DefaultResultSetHandler.java:379)
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleRowValuesForSimpleResultMap(DefaultResultSetHandler.java:338)
其实许多信息根本不用看,就看第一句,我给你截下来
java.lang.NoSuchMethodException: com.mmall.pojo.OrderItem.<init>(java.lang.Integer, java.lang.Integer, java.lang.Long, java.lang.Integer, java.lang.String, java.lang.String, java.math.BigDecimal, java.lang.Integer, java.math.BigDecimal, java.util.Date, java.util.Date)
为什么会报这种错误?
其实很简单,就是OrderItem这个类实例化出错了
给你们看看属性,然后再看看构造器
public class OrderItem {
private Integer id;
private Integer userId;
private Long orderNo;
private Integer productId;
public OrderItem(Integer id, Long orderNo, Integer productId, Integer userId) {
this.id = id;
this.orderNo = orderNo;
this.productId = productId;
this.userId = userId;
}
然后你再看看上面我用红色标明的错误信息,当mybatis加载这个类的时候,是按照顺序来加载的。
第二个明显是Integer类型,然后你看看构造器参数的顺序,是不是有问题。
改过来就行了。(注意:当写重载构造器的时候,一定要按照顺序来传递参数)
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/148434.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...