myBatis 对于结果集(表)中的列名和对象中的属性名称不匹配

解决数据库的结果集对象与javaBean中的属性名不匹配问题
第一种:可以通过数据库sql语句的 as 为查询结果重新起列名
第二种:查询官方的文档,采用resultMap标签替换resultType标签
myBatis 对于结果集(表)中的列名和对象中的属性名称不匹配
在mybatis中的映射文件中进行如下配置

    <!--
       亟待解决的问题:结果集(表)中的列名和对象中的属性名称不匹配
       解决方案:使用resultMap元素
       resultMap元素:结果集对象的映射
        id 属性: 当前Mapper文件中的resulyMap的唯一名称
        type属性: 把结果集中的每一行数据封装成什么类型的对象

        子元素:
        id元素:功能和result一模一样,如果是主键建议使用id元素,提升性能
        result元素:匹配对象中的哪一个属性对应表中的哪一个列


    -->

    <resultMap id="BaseResultMap" type="User">

        <!--此处数据库的值与User中的一样,所以我吧coiumn 与property的值写一样-->
        <!--实际使用中可以去修改数据库列名,然后修改coiumn的值与修改的数据库列名相同-->
        <result column="id" property="id"></result>
        <result column="name" property="name"></result>
        <result column="salary" property="salary"></result>
    </resultMap>

调用resultMap标签

   <select id="listAll"  resultMap="BaseResultMap">
        SELECT  id,name,salary FROM t_User
    </select>
上一篇:【转】resultMap详解(包含多表查询)


下一篇:MyBatis框架核心之注解使用resultMap及多表查询