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

通过myBatis将sql语句返回的值自动包装成一个java对象(3)

1.如果sql字段和java字段名字不一样怎么办?

之前我们将sql返回值转换为java对象时,每条sql的返回值的字段名和java类中的字段名是一一对应的,ie:sql选择的user有username和password两个字段,java中的user对象也有两个一模一样的字段,在这种情况下,mybatis可以自动一一对应。

 如果不一致怎么办呢?这时我们需要配置自己的映射规则。我们用resultMap标签来编写行的映射规则:

<!--
这里我们设置映射规则,把数据库的password映射到java user类的username字段
--><resultMap id="Test" type="User"><result column="password" property="username"/><result column="username" property="password"/></resultMap>

然后将原来mapper里的 resultType改为map

rusultmap属性对应的就是刚刚编写的映射规则。

通过指定映射规则,我们现在用户名和密码一栏就发生了交换,因为我们将其映射字段进行了交换。

最简单的解决方法:确保java字段和sql字段的一致性!

2.映射的那个java对象有多个构造器怎么办

Mybatis:增删改查操作_哔哩哔哩_bilibili第十分钟开始

相关文章:

  • [链路层] 点对点协议 PPP
  • 图解拒付平台:如何应对用户的拒付
  • Linux IDEA 安装及环境配置
  • Spark Doris Connector 可以支持通过 Spark 读取 Doris 数据类型不兼容报错解决
  • Stable Diffusion的 webui 如何在Windows上使用 AMD GPU显卡?
  • Ubuntu12.0安装g++过程及其报错
  • 03 SpringMVC响应数据之接收Cookie和请求头+原生API+共享域对象操作
  • 单页面vite打包学习
  • 统计学-R语言-4.6
  • Qt6入门教程 6:Qt元对象系统
  • vue render函数的使用场景
  • 爬虫-8-数据存储-mysql
  • IOC之Spring统一资源加载策略
  • 基于LabVIEW的声音信号采集分析系统开发
  • Python - 深夜数据结构与算法之 位运算
  • [译]如何构建服务器端web组件,为何要构建?
  • 【技术性】Search知识
  • 【译】理解JavaScript:new 关键字
  • CSS中外联样式表代表的含义
  • Git学习与使用心得(1)—— 初始化
  • JavaScript标准库系列——Math对象和Date对象(二)
  • JavaScript服务器推送技术之 WebSocket
  • maya建模与骨骼动画快速实现人工鱼
  • mysql常用命令汇总
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • Theano - 导数
  • vue和cordova项目整合打包,并实现vue调用android的相机的demo
  • 理解在java “”i=i++;”所发生的事情
  • 小程序开发中的那些坑
  • 由插件封装引出的一丢丢思考
  • 怎么把视频里的音乐提取出来
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • 移动端高清、多屏适配方案
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • # include “ “ 和 # include < >两者的区别
  • # 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告
  • # 执行时间 统计mysql_一文说尽 MySQL 优化原理
  • #常见电池型号介绍 常见电池尺寸是多少【详解】
  • ${factoryList }后面有空格不影响
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (arch)linux 转换文件编码格式
  • (NO.00004)iOS实现打砖块游戏(十二):伸缩自如,我是如意金箍棒(上)!
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (附源码)spring boot建达集团公司平台 毕业设计 141538
  • (删)Java线程同步实现一:synchronzied和wait()/notify()
  • (十)【Jmeter】线程(Threads(Users))之jp@gc - Stepping Thread Group (deprecated)
  • (四)Tiki-taka算法(TTA)求解无人机三维路径规划研究(MATLAB)
  • (转) Face-Resources
  • (转)VC++中ondraw在什么时候调用的
  • .bat批处理(二):%0 %1——给批处理脚本传递参数
  • .NET I/O 学习笔记:对文件和目录进行解压缩操作
  • .net Signalr 使用笔记
  • .NET 中什么样的类是可使用 await 异步等待的?
  • .net遍历html中全部的中文,ASP.NET中遍历页面的所有button控件