mybatis resultType和resultMap的区别

ResultMap:

  <resultMap id="BaseResultMap" type="cn.cloudwalk.syeb.core.gov.model.smileFaceStatistics.SmileFaceStatistics" >
    <id column="id" property="id" jdbcType="VARCHAR" />
    <result column="deviceId" property="deviceId" jdbcType="VARCHAR" />
    <result column="photographNum" property="photographNum" jdbcType="INTEGER" />
    <result column="beautifulNum" property="beautifulNum" jdbcType="INTEGER" />
    <result column="fairBankNum" property="fairBankNum" jdbcType="INTEGER" />
    <result column="changeFaceNum" property="changeFaceNum" jdbcType="INTEGER" />
    <result column="createTime" property="createTime" jdbcType="TIMESTAMP" />
  </resultMap>

ResultType:

cn.cloudwalk.syeb.core.gov.model.smileFaceStatistics.SmileFaceStatistics
  1. ①当提供的返回类型属性是resultType时,MyBatis会将Map里面的键值对取出赋给resultType所指定的对象对应的属性。所以其实MyBatis的每一个查询映射的返回类型都是ResultMap,只是当提供的返回类型属性是resultType的时候,MyBatis对自动的给把对应的值赋给resultType所指定对象的属性。
    ②当提供的返回类型是resultMap时,因为Map不能很好表示领域模型,就需要自己再进一步的把它转化为对应的对象,这常常在复杂查询中很有作用。
  2. 结论:如果数据表中的字段包含下划线这种写法,最好还是用resultMap去返回;resultType返回必须保证数据库字段跟java对象的字段大小写一致。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值