Maybatis中在查询进行select映射的时候,返回类型可以用resultType,也可以用resultMap

resultType是直接表示返回类型的(对应着我们的model对象中的实体)
resultMap则是对外部ResultMap的引用(提前定义了db和model之间的映射key->value关系)
resultType和resultMap不能同时存在
如果能确认返回信息在一个完整实体类中推荐用resultType,返回信息不在一个完整实体类中推荐用resultMap
这里我们举个例子

emp员工表:
在这里插入图片描述
dept部门表:

在这里插入图片描述

如果我们返回的数据为:员工编号,员工姓名,职位,这些信息都在emp表中,那用resultType

如果我们返回的数据为:员工编号,员工姓名,职位,对应的部门编号,部门名称,部门地址,这些信息存在于emp和dept表,需要做关联,那用resultMap

在Mybatis进行查询映射时,其实查询出来的每一个属性都是放在一个对应的Map里面,其中键是属性名,值是其对应的值。

当提供的返回类型属性的resultType是,Mybatis会将Map里面的键值对取出赋给resultType所指定的对象对应属性。所以其实Mybatis的每一个查询映射的返回类型都是resultMap,只是当提供的返回类型属性是resultType时,Mybatis对自动的给把对应的值赋给resultType所指定对象的属性
当提供的返回类型是resultMap时,因为Map不能很好表示领域模型,就需要自己再进一步的把它转化为对应的对象,这常常在复杂查询中很有作用。

Mybatis入门-关联查询(八)相关推荐

  1. 企业级信息系统开发讲课笔记2.3 利用MyBatis实现关联查询

    文章目录 零.本节学习目标 一.查询需求 (一)针对三张表关联查询 (二)按班级编号查询班级信息 (三)查询全部班级信息 二.创建数据库表 (一)创建教师表 (二)创建班级表 (三)创建学生表 三.创 ...

  2. Spring整合Mybatis之关联查询示例

    Spring整合Mybatis之关联查询示例 目录结构: Dept表: employee表: pojo包 Dept.java(实体类): package com.xmm.springboot_lab. ...

  3. mybatis collection 关联查询多个参数

    mybatis collection 关联查询多个参数 column="{evtId=id,businessType=businessType1}" 描述:evtId是关联查询的参 ...

  4. MyBatis框架学习笔记03:利用MyBatis实现关联查询

    文章目录 一.查询需求 (一)针对三张表关联查询 (二)按班级编号查询班级信息 (三)查询全部班级信息 二.创建数据库表 (一)创建教师表 (二)创建班级表 (三)创建学生表 三.创建与数据库表对应的 ...

  5. 【MyBatis】关联查询

    关联查询: 一对一: a.业务扩展类 核心:用resultType指定类的属性 包含 多表查询的所有字段 b.resultMap i.通过 属性成员 将2个类建立起联系 2. <resultMa ...

  6. mybatis plus关联查询_Mybatis 和 Hibernate 持久层框架之间的区别是啥?

    首先,Mybatis 和 Hibernate 都是 ORM 持久层框架,不同点在于,MyBatis 是半自动的,它需要开发人员自己手动编写 SQL 语句. 一.Mybatis MyBatis 支持通过 ...

  7. Mybatis入门学习(八、懒加载)

    懒加载 懒加载的意思就是优化数据库的性能,因为你在多表查询的时候,首先查询一个表,然后获取对应的属性,再去查询其他表,影响到一部分的性能,这就应用到懒加载了 懒加载的应用是在不用这个对象的时候就不发送 ...

  8. MyBatis 自关联查询省市区地区数据,一对多自关联查询

    效果 SQL DROP TABLE IF EXISTS `yxt_area_code`; CREATE TABLE `yxt_area_code` (`id` int(10) NOT NULL AUT ...

  9. mybatis一对一关联查询

    public class CardInfo implements java.io.Serializable{     private int id;     private String cardNu ...

最新文章

  1. 8款审核AWS帐户安全性的免费工具,你值得拥有
  2. 储存卡怎么格式化为fat32_电脑复制文件到U盘提示文件容量太大该怎么办?
  3. 【NOIP2013模拟9.29】TheSwaps
  4. 数据库切换时的一个傻逼的错误。
  5. [react] 你有使用过loadable组件吗?它帮我们解决了什么问题?
  6. 阿里首推的“SpringBoot+Vue全栈项目”有多牛X?
  7. 市场上血糖仪的测试原理和优缺点评价
  8. [ 深度学习 ] —— 图卷积神经网络 GCN
  9. Maven Setting.xml配置文件下载 阿里云镜像 下载可用
  10. java间接调用_无法解析类型 java.util.Map$Entry。从必需的 .class 文件间接引用了它...
  11. 原生JS实现在线音乐播放器及歌词滚动
  12. 泊松过程的概念及其例题分析
  13. edp和edt哪个好_邂逅的香水 到底是EDT 好还是 EDP 好?
  14. mk突变点检测_科学网—从网上找的M-K突变检验的程序 - 张乐乐的博文
  15. Android实现一键开启自由窗口、分屏、画中画模式——分屏模式
  16. 读取生产环境go语言的最佳实践展示
  17. 新申请了一个博客 以后就要记录我的点滴生活了
  18. CRC-16/MODBUS x16+x15+x2+1校验计算 C++
  19. Linux:chmod -R 777 * 是什么意思?
  20. 入门图形学:屏幕波爆特效

热门文章

  1. 【汇总】pytorch里的一些函数
  2. 【mysql基础知识】数据库中新建触发器,监控数据变化
  3. 例子---PHP与Form表单之一
  4. mongodb更新操作
  5. php集成是什么原因,PHP集成开发环境里面的www问题
  6. java logic逻辑,logicJava的复习
  7. 哔哩哔哩公司swot分析_可口可乐公司2019年SWOT分析
  8. 南工院C语言试卷答案,南工院11-12-1C期末B试卷 附答案.doc
  9. flash.net.filereference php,as3与php 上传单个图片demo
  10. android系统加载主题的流程,详解Android布局加载流程源码