resultMap与resultType的区别
resultmap与resulttype的区别为:对象不同、描述不同、类型适用不同。
一、对象不同
1、resultmap:resultMap如果查询出来的列名和pojo的属性名不一致,通过定义一个resultMap对列名和pojo属性名之间作一个映射关系。
2、resultType:resultType使用resultType进行输出映射,只有查询出来的列名和pojo中的属性名一致,该列才可以映射成功。
二、描述不同
1、resultmap:resultMap对于一对一表连接的处理方式通常为在主表的pojo中添加嵌套另一个表的pojo,然后在mapper.xml中采用association节点元素进行对另一个表的连接处理。
2、resulTtype:resultType无法查询结果映射到pojo对象的pojo属性中,根据对结构集查询遍历的需要选择使用resultType还是resultMap。适用于单表查询。
三、类型适用不同
1、resultmap:mybatis中在查询进行select映射的时候,返回类型可以用resultType,也可以用resultMap。
2、resulttype:resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,但是resultType跟resultMap不能同时存在。
resultMap属性和元素简介:
属性 | 描述 |
---|---|
property | 需要映射到JavaBean 的属性名称。 |
column | 数据表的列名或者标签别名。 |
javaType | 一个完整的类名,或者是一个类型别名。如果你匹配的是一个JavaBean,那MyBatis 通常会自行检测到。然后,如果你是要映射到一个HashMap,那你需要指定javaType 要达到的目的。 |
jdbcType | 数据表支持的类型列表。这个属性只在insert,update 或delete 的时候针对允许空的列有用。JDBC 需要这项,但MyBatis 不需要。如果你是直接针对JDBC 编码,且有允许空的列,而你要指定这项。 |
typeHandler | 使用这个属性可以覆写类型处理器。这项值可以是一个完整的类名,也可以是一个类型别名。 |
<!--column不做限制,可以为任意表的字段,而property须为type 定义的pojo属性-->
<resultMap id="唯一的标识" type="映射的pojo对象"><id column="表的主键字段,或者可以为查询语句中的别名字段" jdbcType="字段类型" property="映射pojo对象的主键属性" /><result column="表的一个字段(可以为任意表的一个字段)" jdbcType="字段类型" property="映射到pojo对象的一个属性(须为type定义的pojo对象中的一个属性)"/><association property="pojo的一个对象属性" javaType="pojo关联的pojo对象"><id column="关联pojo对象对应表的主键字段" jdbcType="字段类型" property="关联pojo对象的主席属性"/><result column="任意表的字段" jdbcType="字段类型" property="关联pojo对象的属性"/></association><!-- 集合中的property须为oftype定义的pojo对象的属性--><collection property="pojo的集合属性" ofType="集合中的pojo对象"><id column="集合中pojo对象对应的表的主键字段" jdbcType="字段类型" property="集合中pojo对象的主键属性" /><result column="可以为任意表的字段" jdbcType="字段类型" property="集合中的pojo对象的属性" /> </collection>
</resultMap>
resultMap与resultType的区别相关推荐
- php 数据类型 map,ResultMap和ResultType的区别
ResultMap和ResultType的区别 使用mybatis进行数据库连接操作时对于SQL语句返回结果的处理通常有两种方式,一种就是resultType:另一种就是resultMap: 1.re ...
- 【MyBatis】resultMap和resultType的区别
mybatis中resultMap和resultType的区别 mybatis中在查询进行select映射的时候,返回类型可以用resultType,也可以用resultMap.resultType是 ...
- resultMap和resultType 的区别?
1.resultMap 如果查询出来的列名和pojo的属性名不一致时,可以通过resultMap对列名和属性名做映射关系; <resultMap type="com.wuhao.one ...
- resultMap和resultType的区别
resultMap返回的列名与bean的属性名可以不一致,resultType则要求一致.就具体代码作分析.对于指定resultMap属性,直接读取字符串,而对于指定resultType会解析为具体的 ...
- 在mybatis中resultMap与resultType的区别
MyBatis中在查询进行select映射的时候,返回类型可以用resultType,也可以用resultMap resultType是直接表示返回类型的,而resultMap则是对外部ResultM ...
- Mybatis中resultMap和resultType的区别
MyBatis的每一个查询映射的返回类型都是ResultMap,只是当我们提供的返回类型属性是resultType的时候,MyBatis对自动的给我们把对应的值赋给resultType所指定对象的属性 ...
- ibatis中resultMap和resultType使用区别
resultMap 1.resultMap的值为映射的返回值自定义节点Id名称 resultType 1.resultType的值为返回值的类型,且为一列 ---------------------- ...
- mybatis中resultMap和resultType区别,三分钟读懂
先说结论: resultmap与resulttype的区别为:对象不同.描述不同.类型适用不同. 说人话就是,resultmap和resulttype功能差不多,但是resultmap功能更强大 re ...
- resultMap和resultType区别详解
resultMap和resultType区别详解 resultmap与resulttype的区别为:对象不同.描述不同.类型适用不同 一.对象不同 1.resultmap:resultMap如果查询出 ...
最新文章
- 几款二极管、三极管结电容与反向电压
- 驱动WDK7600在VC6.0下的编译开发配置环境
- php openssl des ecb,PHP7 OpenSSL DES-EDE-CBC加解密
- 数据挖掘竞赛-美国King County房价预测训练赛
- Java Day 13
- iphone7配置_西安苹果售后维修教您iphone7发热严重、耗电快怎么解决?
- css --- 使用媒体查询当屏幕宽度小于某个值时,隐藏掉某个类
- 后端开发者开发前端必会的工具(一):样式调试篇
- m-qam matlab,基于matlab的M_QAM通信系统仿真.doc
- jrtplib linux编译,jrtplib+jthread 交叉编译
- Python 词云图:wordcloud库的使用
- jsp实现登录验证码
- 学习笔记:EPS高级功能1-车道保持辅助LKA(Lane Keeping Assist)
- checkinput php,使用php检查输入字段的类型
- java POI excel导出自定义分页问题
- 华为「天才少年」计划招募的博士们,迎来首秀!
- andorid 源码北京公交线路查询(离线)
- 如何写好科研论文(笔记)
- 大据数技术之高频面试题8.0.9
- 做饭真的很简单!做饭扫盲贴!
热门文章
- 有序聚类的matlab实现
- 物联网专业可以报计算机岗位吗,现在物联网工程专业的就业岗位有哪些?小编介绍...
- utf8 转 gbk/gb2312有些字乱码问题,例如 珺字
- 快速验证产品价值 -- MVP(最小可行产品)
- 佳能ip110 linux驱动下载,佳能iP110驱动程序官方版
- 实战案例:一台主机不能设置两个网关
- Centos中nginx安装步骤(在线/离线)
- BZOJ 2427: [HAOI2010]软件安装 Tarjan缩点 + DP
- 三国杀(1):VS2017 C/C++ lua tolua++ 编译 集成,及使用介绍
- 《20岁无资本无未来》