解决Mybaits数据库字段和属性名不一致的问题

解决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即可

对于一些不需要更改的字段,可以忽略

原文地址:https://www.cnblogs.com/ivy-blogs/p/13648922.html