美文网首页
MyBatis中resultType和resultMap的区别

MyBatis中resultType和resultMap的区别

作者: Java_Explorer | 来源:发表于2019-05-26 11:18 被阅读0次

使用MyBatis查询数据库记录时,返回类型常用的有两种:resultType和resultMap。那么两者之间有什么区别呢?

如果只是返回一个值,比如说String或者int,那直接用resultType就行了,resultType="java.lang.String"

<select id="getUserName" resultType="java.lang.String">
    select user_name from t_users
</select>

如果sql查询结果返回的列名和实体类中的字段名一致,可以使用resultType,MyBatis会自动把查询结果赋值给和字段名一致的字段。
实体类对象:

@Data
public class Users {
    
    private Long id;
    private String userName;
    private Integer sex;

}

Mapper:

<select id="getUsersType" resultType="com.zkzong.mybatis.domain.Users">
    select user_name userName, sex from t_users
</select>

如果不一致,sql语句中可以使用别名的方式使其一致。

当sql的列名和实体类的列名不一致,这时就可以使用resultMap了。

<resultMap id="userMap" type="com.zkzong.mybatis.domain.Users">
    <id property="id" column="id"/>
    <result property="userName" column="user_name"/>
    <result property="sex" column="sex"/>
</resultMap>

<select id="getUsersMap" resultMap="userMap">
    select id, user_name, sex from t_users
</select>

property是实体类的字段名,column是sql查询的列名。

对于简单的映射,resultType和resultMap区别不大。但是resultMap功能更强大,可以通过设置typeHander来自定义实现功能。

相关文章

  • resultType和resultMap

    mybatis中resultType和resultMap的区别:resultType返回的sql列名和对应实体的属...

  • 2018-11-26

    关于resultType和resultMap的区别如下: MyBatis中在查询进行select映射的时候,返回类...

  • ??

    问题 resultType 和resultMap的差别 "#和$的区别 mybatis使用,先导包,,在配置环境 ...

  • MyBatis中resultType和resultMap的区别

    使用MyBatis查询数据库记录时,返回类型常用的有两种:resultType和resultMap。那么两者之间有...

  • 简记

    jvm 模型 以及类加载机制 mybatis 分页原理,resulttype与resultmap区别 责任链模式...

  • MyBatis 中 ResultType 和 ResultMap

    使用resultType进行输出映射,只有查询出来的列名和pojo中的属性名一致,该列才可以映射成功。 如果查询出...

  • MyBatis之输入(parameterType)与输出(res

    title: MyBatis之输入(parameterType)与输出(resultType、resultMap)...

  • 面试题总结

    1.resultType 和 和 p resultMap 的区别?resultType 是 标签的一个属性,适合...

  • resultType和resultMap区别

    resultType和resultMap基本映射 :(resultType)使用resultType进行输出映射,...

  • mybatis中容易混淆的概念

    resultMap 和resultType当配置 resultType 时,就不需要配置 resultMap ,看...

网友评论

      本文标题:MyBatis中resultType和resultMap的区别

      本文链接:https://www.haomeiwen.com/subject/yyllfqtx.html