实体类的属性和数据库的字段不匹配
实体类
public User(int id, String name, String password) {
this.id = id;
this.name = name;
this.password = password;
}
数据库
我们发现这里实体类的属性和数据库的字段不对应(password和pwd)
运行结果
User{id=3, name='李四', password='null'}
User{id=4, name='李三', password='null'}
这里的password是空的。原因是MyBatis自带一个类型构造器,会在‘背地里’创建与数据库相对应的实体类属性,所以password没有对应的数据库字段
解决方法
1,给pwd取别名为password
运行结果
User{id=3, name='李四', password='1231233'}
User{id=4, name='李三', password='123123'}
2,应用resultMap
注意这里的 type="User",我取了别名,如果没有取别名,要把类的绝对路径写全
运行结果
User{id=3, name='李四', password='1231233'}
User{id=4, name='李三', password='123123'}