mybatis中resultType和resultMap使用时的区别

发布时间:2021-09-28 18:24:44

mybatis中select元素有两个属性resultType和resultMap,工作中总是使用到他们,但是他们有什么区别呢?


就我的使用经验来说,对于单表查询映射或多表联合查询映射来说,他们都能达到要求,例如


package com.someapp.model;


public class User {


? private int id;


? private String username;


? private String hashedPassword;


? ?


? public int getId() {


? ? return id;


? }


? public void setId(int id) {


? ? this.id = id;


? }


? public String getUsername() {


? ? return username;


? }


? public void setUsername(String username) {


? ? this.username = username;


? }


? public String getHashedPassword() {


? ? return hashedPassword;


? }


? public void setHashedPassword(String hashedPassword) {


? ? this.hashedPassword = hashedPassword;


? }


}
















使用resultType













这些情况下,MyBatis 会在幕后自动创建一个 ResultMap,基于属性名来映射列到 JavaBean 的属性上。如果列名没有精确匹配,你可以在列名上使用 select 字句的别名(一个 基本的 SQL 特性)来匹配标签。比如:

















使用resultMap









?


?


?




















看出来了吧,resultType和resultMap都映射到了User对象中






说说不同点吧,resultType 和restltMap


restulyType:


1.对应的是java对象中的属性,大小写不敏感,


2.如果放的是java.lang.Map,key是查询语句的列名,value是查询的值,大小写敏感


3.resultMap:指的是定义好了的id的,是定义好的resyltType的引用


注意:用resultType的时候,要保证结果集的列名与java对象的属性相同,而resultMap则不用,而且resultMap可以用typeHander转换


4.type:java 对象对应的类,id:在本文件要唯一column :数据库的列名或别名,
property:对应java对象的属性,jdbcType:java.sql.Types


查询语句中,resultMap属性指向上面那个属性的标签的id


parameterType:参数类型,只能传一个参数,如果有多个参数要封装,如封装成一个类,要写包名加类名,基本数据类型则可以省略


5.一对1、一对多时,若有表的字段相同必须写别名,不然查询结果无法正常映射,出现某属性为空或者返回的结果与想象中的不同,而这往往是没有报错的。


6.若有意外中的错误,反复检查以上几点,和认真核查自己的sql语句,mapper.xml文件是否配置正确。










另外还有resultMap 元素,它是 MyBatis 中最重要最强大的元素,它能提供级联查询,缓存等功能

相关文档

  • 关于春天的作文:赞美春天
  • 有一种爱写在纸上
  • 泰迪杯数据挖掘挑战赛?数据预处理(二)
  • 幸福拍手歌中班优秀音乐教案4篇
  • 高一语文教案
  • 为什么打呼噜怎么治
  • 年的来历作文300字年的来历作文-关于年份起源的构成
  • 行测判断推理技巧:不是建筑师,也要会“搭桥”
  • 如何面对压力HowtoDealwithStress
  • 如何在任务管理器中关闭无响应程序
  • 教师不严不实自查报告范文
  • 鲁东大学今年二本最低录取分数线是多少分
  • POI生成(Excel 2007).xlsx文件时报“java.lang.NoSuchMethodError”错误的解决
  • 儿童水粉画入门
  • 你必须非常努力才能看起来毫不费力
  • 有关责任 3篇
  • 猪年祝福短信简短-最新猪年经典祝福短信
  • 有内涵的恐怖故事精选
  • 读《永生的眼睛》有感400字
  • 绿豆汤怎么煮
  • 伤感绝望的句子
  • 美妙校园
  • 爱回收手机估价靠谱吗
  • 申请香港大学的博士生需要什么条件那
  • 什么样的路最窄的脑筋急转弯
  • c++主项练习错题分析(2) STL容器
  • 若春风化雨 我便爱你懂你
  • c# LeetCode3 无重复字符的最长子串
  • 银行卡绑定的手机号怎么突然用不了怎么办
  • 客户道歉信相关范文推荐
  • 猜你喜欢

  • 雨棚报价单
  • 美容养颜圣品-怡人宝
  • 初中生以思念为话题的作文
  • 幼儿园中班游戏活动《报纸游戏》优质课教案比赛公开课获奖教案教师资格证面试试讲教案
  • 广西海龙实业开发有限公司企业信用报告-天眼查
  • 水性环氧乳液的制备及其性能研究
  • 沉醉在书的世界里_五年级抒情作文
  • 女人来月经前腰痛什么原因
  • 长春欣园经贸有限公司(企业信用报告)- 天眼查
  • 医院物业保洁服务方案
  • 并行计算——结构算法编程
  • 《林冲棒打洪教头》(北京版必修1)
  • 旅游类型的网站运营推广该怎么做
  • 猴山上的绿色守护神——记凉城县猴山森林公园管理所所长鲍丽东
  • 西芹腰果炒虾仁的家常做法
  • 基本医疗服务价格电子版(5990项)(20120901)_1 (1)
  • 【标准合同模板】全国最新供用电合同(3)
  • 故乡情深-800字五年级作文
  • 谢谢你们,建筑工人
  • 2018年201X年国家助学金申请书范文word版本 (2页)
  • 关于心态的小故事精选
  • fastjson 转下划线_使用FastJson进行对象和JSON转换属性命名规则为下划线和驼峰的问题...
  • 做一名合格业务员
  • 三方协议书模板样本
  • 推荐最新审定人教版小学四年级数学上册积的变化规律(用)精品课件
  • 人资规划专题-新员工职务、工资标准
  • 试论会计信息化对企业财务管理的影响及对策
  • 商务接待礼仪小常识汇总
  • git 简单操作汇总
  • 自考“古代汉语”北师大听课笔记一
  • 万源市竹峪供销合作社竹峪分社农具门市企业信息报告-天眼查
  • 东莞市昌顺包装制品有限公司(企业信用报告)- 天眼查
  • 初三英语下学期Units-11-12复*
  • 商城县武桥乡砖瓦厂企业信用报告-天眼查
  • java xmn是什么_java -Xmn jvm选项是什么意思
  • 2019学年第一学期校本培训工作计划
  • dnf结婚倒计时怎么挑过
  • “学校工会计划”学校工作计划
  • 初中政治应培养学生的辩证思维能力
  • 网页设计与制作-第三章插入网页基本元素
  • 中学作文教学创新方法之我见
  • 1—23半成品(预制混凝土构件、钢构件、预拌混凝土等)出厂证明统计台账
  • 电脑版