java.lang.NoSuchMethodException_Error querying database. Cause: org.apache.ibatis.reflection.Reflec

java.lang.NoSuchMethodException_Error querying database. Cause: org.apache.ibatis.reflection.Reflec解决办法。

原因是没有提供空的构造方法

在实体类中提供了有参构造器,忽略了提供无参构造器,那么无参构造器就会被有参构造器覆盖。而恰巧mybatis需要调用该类的空构造器来完成实例化。所以会报下面的异常。

Error querying database. Cause: org.apache.ibatis.reflection.ReflectionException: Error instantiating class net.neuedu.sm.domain.Users with invalid types () or values (). Cause: java.lang.NoSuchMethodException: net.neuedu.sm.domain.Users.()

The error may exist in file [D:\Users\Hero_mo\Documents\workspace-sts-3.9.9.RELEASE\mybatis_1026_sm_dao\build\classes\mapper\UserMapper.xml]

The error may involve user.queryUserById-Inline

The error occurred while setting parameters
SQL: select * from t_user where id=?

在这里插入图片描述
在这里插入图片描述

再去看了一眼我的实体类:
果然,少了一个空的构造方法

实体类提供了有参构造方法必须提供无参构造方法

package net.neuedu.sm.domain;

import java.io.Serializable;
import java.util.Date;

public class Users implements Serializable{
	private static final long serialVersionUID = 1918093918350712996L;
	private Integer id;
	private String username;
	private Date brithday;
	private String address;
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public Date getBrithday() {
		return brithday;
	}
	public void setBrithday(Date brithday) {
		this.brithday = brithday;
	}
	public String getAddress() {
		return address;
	}
	public void setAddress(String address) {
		this.address = address;
	}
	@Override
	public String toString() {
		return "Users [id=" + id + ", username=" + username + ", brithday=" + brithday + ", address=" + address + "]\n";
	}
	/**
	 * @param id
	 * @param username
	 * @param brithday
	 * @param address
	 */
	public Users(Integer id, String username, Date brithday, String address) {
		super();
		this.id = id;
		this.username = username;
		this.brithday = brithday;
		this.address = address;
	}	
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

code_mo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值