• MyBatis-05-解决属性名和字段名不一致的问题


    5、解决属性名和字段名不一致的问题

    1、问题

    数据库中的字段

    新建一个项目,拷贝之前的,测试实体类字段不一致的情况。

    public class User {
        private int id;
        private String name;
        private String pwd;
    }
    

    //select * from mybatis.user where id = #{id}
    //类型处理器
    //select id,name,pwd from mybatis.user where id = #{id}
    

    解决方法:

    • 起别名
    select id,name,pwd as password from mybatis.user where id = #{id}
    

    2、resultMap

    结果集映射

    id name pwd
    id name password
    
    <!--结果集映射-->
        <resultMap id="UserMap" type="User">
            <!--column数据库中的字段,property实体类中的属性-->
            <result column="	id" property="id"/>
            <result column="name" property="name"/>
            <result column="pwd" property="password"/>
        </resultMap>
        <select id="getUserById" resultMap="UserMap" parameterType="int">
           /*定义sql*/
           select * from mybatis.user where id = #{id};
       </select>
    
    • resultMap 元素是 MyBatis 中最重要最强大的元素
    • ResultMap 的设计思想是,对于简单的语句根本不需要配置显式的结果映射,而对于复杂一点的语句只需要描述它们的关系就行了。
    • ResultMap 最优秀的地方在于,虽然你已经对它相当了解了,但是根本就不需要显式地用到他们。
    • 如果世界总是这么简单就好了。
    Keep Clam and Carry Keen.
  • 相关阅读:
    51Nod 1006 最长公共子序列Lcs
    输入和输出
    51Nod 1092 回文字符串
    51Nod 1050 循环数组最大子段和
    项目初始
    一元多项式求导 (25)
    说反话 (20)
    数组元素循环右移问题 (20)
    素数对猜想 (20)
    换个格式输出整数 (15)
  • 原文地址:https://www.cnblogs.com/MrKeen/p/12012070.html
Copyright © 2020-2023  润新知