1.resultMap

  • resultMap 元素是 MyBatis 中最重要最强大的元素。
  • 解决类属性名和数据库中表字段名不一致问题
  • ResultMap 的设计思想是,对简单的语句做到零配置,对于复杂一点的语句,只需要描述语句之间的关系就行了。
  • 具体效果sql查出来的结果,其中数据库表字段名和类属性名不一致的时候,此属性值为null
  • 解决方式:

方式1:对sql中某个字段在操作的时候起别名,来跟类的属性名一致

方式2:resultMap,将类属性映射到表字段

<!--结果集映射-->
<resultMap id="userMap" type="user">
    <!--property类属性,column表字段-->
    <result property="id" column="id"/>
    <result property="name" column="name"/>
    <result property="pwd" column="pwd"/>
</resultMap>
<select id="selectUserById" resultMap="userMap">
    select * from user where id = #{id}
</select>

ResultMap 的优秀之处——你完全可以不用显式地配置它们,即类属性和表字段名一致的不需要显示定义

<resultMap id="userMap" type="user">
    <!--property类属性,column表字段-->
   
    <result property="pwd" column="pwds"/>
</resultMap>

这只是单表查询的情况,多表查询1:n/n:m情况就是另一种情况。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。