当前位置: 首页 > news >正文

resultType与resultMap的区别

  • resultType‌:直接指定返回类型,适用于查询结果集中的列名(字段名)与Java实体类中的属性名完全对应的情况。此时,MyBatis会自动进行列名与属性名的映射,无需定义resultMap‌。
  • resultMap‌:用于定义详细的映射关系,适用于查询结果集中的列名(字段名)与Java实体类中的属性名不一致的情况或需要进行复杂映射的情况。通过resultMap可以精确控制列名与属性名的映射关系,适用于一对一、一对多等复杂映射场景‌。

实际应用中的例子

1.假设有一个用户表user,其字段包括 idusernamepassword对应的Java对象为User类,属性为 idxusernamexpasswordx。如果数据库字段名与Java对象属性名不一致,就需要使用resultMap来定义映射关系:(select标签的resultMap的值是    上面定义的resultMap)

<resultMap id="userMap" type="com.yykj.beans.User">
    <id column="id" property="idx" jdbcType="INTEGER"/>
    <result column="username" property="usernamex" jdbcType="VARCHAR"/>
    <result column="password" property="passwordx" jdbcType="VARCHAR"/>
</resultMap>

<select id="selectById" resultMap="userMap">
    select * from user   
</select>

2.如果字段名与属性名一致,则可以直接使用resultType,resultType的值是对应实体类 User 的路径:

<select id="selectUser" resultType="com.yykj.beans.User">
    SELECT id, username, password FROM user
</select>

相关文章:

  • C++基础:引用,内联函数,auto,类的两种定义方式
  • 【含文档+PPT+源码】基于微信小程序的校园志愿者管理系统的设计与实现
  • CSS3 面试题 超基础 一
  • DAY07 Collection、Iterator、泛型、数据结构
  • Docker 部署 Dify:轻松集成 Ollama 和 DeepSeek
  • HTML应用指南:利用GET请求获取全国乐乐茶门店位置信息
  • 关于 C++ 二叉树的总结汇报
  • 对话智面创始人陶然:一是初心和心态,二是坚持和心力
  • TinyVue自动导入插件重大升级,@opentiny/unplugin-tiny-vue1.0.0版本开启单组件包引入新模式
  • Visual Studio Code的下载安装与汉化
  • 深入解析 Flutter Riverpod:从原理到实战
  • 2024年国赛高教杯数学建模C题农作物的种植策略解题全过程文档及程序
  • 理解三种哈希算法:MD5、CRC、SHA256
  • git:恢复纯版本库
  • Windows的注册表有什么用,Linux怎么没有
  • 深入解析 Flutter GetX
  • 文本操作基础知识:正则表达式
  • AndroidStuidio 指定APK 文件的输出路径和文件名格式
  • 【YOLOv8】
  • Java-数据结构-(HashMap HashSet)
  • 独行侠以1.8%概率获得状元签,NBA原来真的有剧本?
  • 【社论】个人破产探索,要守住“诚实而不幸”的底线
  • 真人秀《幸存者》百万美元奖金,25年间“缩水”近一半
  • 应急部:正在积极推动各地逐步科学建设改造应急避难场所
  • 普京提议恢复直接谈判,泽连斯基:望俄明日停火,乌愿谈判
  • 富家罹盗与财富迷思:《西游记》与《蜃楼志》中的强盗案