解决Mybaits数据库字段和属性名不一致的问题
表结构
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(8) | NO | PRI | NULL | |
| name | varchar(20) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
java实体类
package com.ivy.pojo;
public class User {
private int id;
private String username;
}
当实体类的属性和表的结构字段名不一致时,需要我们手动去做字段映射
ResultMap
结果集映射
<resultMap id="UserMap" type="com.ivy.pojo.User">
<result column="id" property="id"/>
<result column="name" property="username"/>
</resultMap>
<select id="getUserList" resultMap="UserMap">select * from mybatis.user</select>
在对应的xml解析文件中增加resultMap
字段,id
为当前resultMap
的唯一标识符, type
为对应实体类的别名或路径
result
为当前resultMap
对应的字段属性
最后在对用的sql
标签里将resultType
改为resultMap
值为对应的id
即可
对于一些不需要更改的字段,可以忽略