Mybatis:解决属性名和字段名不一致的问题

    科技2022-07-11  99

    问题描述

    常见的mybatis语句:

    <select id="getAllUsers" resultType="com.term.model.User"> select * from user </select>

    当数据库中的字段名和实体类的属性名一致的时候,类型映射器将自动赋值,并返回一个完整的User对象。 而当有属性名和字段名不一致的时候,自动赋值无法完成,会出现属性值为空的情况。

    解决方法

    1、Sql语句使用别名

    <select id="getAllUsers" resultType="com.term.model.User"> select id,name,pwd as password from user </select>

    2、结果集

    <!--映射结果集--> <resultMap id="userMap" type="com.term.model.User"> <!--自定义映射关系,column是字段名,property对应属性名--> <result column="id" property="id"/> <result column="name" property="name"/> <result column="pwd" property="password"/> </resultMap> <select id="getAllUsers" resultMap="userMap"> select * from user </select>
    Processed: 0.030, SQL: 8