07|第七课:输出参数为各种类型以及HashMap和resultMap的使用

一、历史回顾

(一)、输出参数ResultType

1、简单类型(8个基本类型 + String)

例:

基本类型int

2、对象类型(或者是对象的集合类型)

例:

对象类型(也可以是List等集合类型)

resultMap:实体类的属性、数据表的字段的类型或者名字不同的时,就使用resultMap。

二、输出参数为HashMap和resultMap的使用

(一)、输出参数为HashMap

1、xxxMapper.xml配置:

通过映射别名的方式

注意:如果这里没有设置别名,就采取原有的字段名作为返回结果中Map的key。

这里不能查询多条数据,因为HashMap本身虽然是一个集合,可以存放多个元素,但是根据提示发现返回值为HashMap时,查询只能是1个结果(因为这个结果里有很多字段,每个key-value都对应结果中的一个字段)。当然可以将Map放入List中,这里的xxxMapper.xml不用修改,只要将接口的返回值修改成List即可

例:

xxxMapper.xml配置:

xxxMapper.xml配置

xxxMapper接口:

xxxMapper接口

xxxMapper接口的多个Map的情况:

多个Map的情况

测试类:

测试类

测试类多个Map的情况:

测试类多个Map

(二)、输出参数为ResultMap

resultMap:实体类的属性、数据表的字段的类型或者名字不同的时,就使用resultMap。

resultMap方式

注意:当属性名和字段名不一致时,还可以使用resultType+HashMap。本质上就是通过SQL语句的重命名的方式。这种不支持级联取值

resultType+HashMap方式

注:如果10个字段,但是发现某一个字段结果始终为默认值(例:0,null,0.0之类),则可能是表的字段和类的属性名字没有对应上。

例:resultMap方式来解决字段不一致的情况

xxxMapper.xml配置:

xxxMapper.xml配置

xxxMapper接口:

xxxMapper接口

测试类:

测试类

例:resultType+HashMap方式来解决字段不一致的情况

xxxMapper.xml配置:

xxxMapper.xml配置

xxxMapper接口:

xxxMapper接口

测试类:

测试类
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 简介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的...
    笨鸟慢飞阅读 11,078评论 0 4
  • 1.1mybatis下载 mybaits 的代码由github.com 管理,地址:https://github....
    暖熊熊阅读 4,300评论 0 5
  • MyBatis 理论篇 [TOC] 什么是MyBatis  MyBatis是支持普通SQL查询,存储过程和高级映射...
    有_味阅读 8,035评论 0 26
  • Mybatis介绍 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache...
    day_Sunny阅读 7,615评论 0 6
  • 今天是第三次线下晨跑,虽然昨天晚上一点多才睡,但今天一早还是按时参加了跑步。要想有多自由,就要有多自律。大家一起跑...
    JunChen_c408阅读 845评论 0 1