Mybatis学习笔记8 查询返回专题

Mybatis学习笔记7 参数处理专题_biubiubiu0706的博客-CSDN博客

1.返回实体类

2.返回List<实体类>

3.返回Map

4.返回List<Map>

5.返回Map<String,Map>

6.resultMap结果集映射

7.返回总记录条数

新建模块

依赖

目录结构

1.返回实体类  如果返回多条,用单个实体接收会出异常

2.返回List<实体类>  即使返回一条记录 也可以用List<实体类> 接收

3.返回Map   这个其实就为偷懒,不想写类接收   查出来的数据库字段名做为key 值作为value

当然你可以起别名来作为Key

至于接收类型完全可以用Map<String,String>

4.返回List<Map>  还是为了省事,返回多个实体就是返回多个Map

同样你可以起别名来作为Key

5.返回Map<String,Map>  这种方式和List<Map>是差不多的

只不过Map<String,Map>来接收的话,他会有个Key  举例

List<Map<String,String>>结构是:

[{sex=男, name=张三, birth=1980-10-11, id=1, age=20, height=178.0}, {sex=男, name=李四, birth=1978-02-03, id=2, age=22, height=175.0}, {sex=男, name=王五, birth=1977-06-01, id=3, age=23}, {sex=女, name=赵六, birth=2023-09-19, id=4, age=25, height=172.0}]

简写就是[{name=zhangsan,age=14},{name=lisi,age=15}]这种

而Map<String,Map>的结构就是这样

{key1={name=zhangsan,age=14},key2={name=lisi,age=15}}

具体key取值一般是主键的值,这样就方便取了

6.resultMap结果集映射  有时候当数据库字段和实体类字段不同时候比如   数据库字段是car_num

实体类是carNum,这是有3种做法

1.自动转驼峰配置

在mybatis核心配置文件中   即可开启驼峰命名自动映射

使用自动转驼峰配置:要满足以下规范

1.java命名规范:首字母小写,后面每个单词首字母大写,遵循驼峰命名方法

2.SQL命名规范:全部小写,单词之间采用下划线分割

例如: carNum---->car_num        carType----->car_type    produceTime----->produce_time

2.结果集映射

3.别名

这里用下resultMap

主键你用result也是可以的  但是用id可以提高效率

如果数据库字段和实体类属性相同,可以不配置,这里只是介绍用法

7.返回总记录条数

返回值类型可以String Long Integer long int

注意:

select count(具体某个字段) from t_student

如果是具体某个字段,他会排除null

关于resultType  Mybatis中内置的别名

mybatis – MyBatis 3 | 配置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/82217.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Request body too large. The max request body size is 30000000 bytes.

调用 .Net Core 6.0 Web API 报错&#xff1a;Request body too large. The max request body size is 30000000 bytes. Startup.cs增加如下内容&#xff1a; services.Configure<KestrelServerOptions>(options >{options.Limits.MaxRequestBodySize int.MaxValue;}…

c++模板到底是什么?

一、语法设计上 从c语言的设计和演进得知c之父设计模板的主要目的就是替代c语言的宏定义&#xff0c;觉得宏过于松散&#xff0c;因此才设计了模板&#xff0c;使之宏能做到的事&#xff0c;模板也能&#xff0c;而且做到的更优雅。 二、标准库的使用上 c著名的stl库&#xff0…

PDF文件的页眉页脚无法删除的原因和三种替代方法

大家好&#xff01; 今天六分职场为大家介绍一个PDF的常用操作。有的时候我们需要为PDF文件添加页眉页脚&#xff0c;但如果我们这个PDF文档是从其他地方参考的&#xff0c;经常会发现无法直接编辑或者删除PDF文件中页眉页脚。 不用担心&#xff0c;我们使用WPS的PDF软件&…

《C++标准库第2版》3.2 虽旧犹新的语言特性 笔记

3.2 虽旧犹新的语言特性 非类型模板参数 1.除了类型参数之外&#xff0c;我们也可以为template使用nontype paramatter. 2.非类型参数看作是template类型的一部分 bitset<32> flags32; bitset<50> flags50; // 这两个看作是两个不同类型的template模板参数默认…

牛客网字节面试算法刷题记录

NC78 反转链表 public ListNode ReverseList (ListNode head) {if(headnull) return head;ListNode phead.next,q,tailhead;tail.next null;while(p!null){q p.next;p.next tail;tail p;p q;}return tail;} NC140 排序 冒泡排序 public int[] MySort (int[] arr) {for…

计算机竞赛 深度学习 opencv python 实现中国交通标志识别

文章目录 0 前言1 yolov5实现中国交通标志检测2.算法原理2.1 算法简介2.2网络架构2.3 关键代码 3 数据集处理3.1 VOC格式介绍3.2 将中国交通标志检测数据集CCTSDB数据转换成VOC数据格式3.3 手动标注数据集 4 模型训练5 实现效果5.1 视频效果 6 最后 0 前言 &#x1f525; 优质…

Go面试题:锁的实现原理sync-mutex篇

在Go中&#xff0c;主要实现了两种锁&#xff1a;sync.Mutex(互斥锁) 以及 sync.RWMutex(读写锁)。 本篇主要给大家介绍sync.Mutex的使用和实现原理。 文章目录 为什么需要锁在Go中对于并发程序进行公共资源的访问的限制最常用的就是互斥锁&#xff08;sync.mutex&#xff09…

git branch -r 远程分支显示不全

找回csdn帐号了&#xff0c;计划陆续开始更新最近的笔记√ 没想到很久没登还有人在看 问题描述 git 查看项目远程分支&#xff1a; git branch -r返回结果很少。但GitHub页面上能看到很多的分支。 尝试git remote update&#xff0c;发现结果仍然如此。 PS C:\Users\dell\g…

AUTOSAR汽车电子嵌入式编程精讲300篇-基于AUTOSAR架构的AT控制系统研究与实现

目录 前言 国内外研究现状 国外研究现状 国内研究现状 2 AUTOSAR规范及开发流程

分析各大常用的JS加密优缺点

Base64编码&#xff1a; 优点&#xff1a; 简单&#xff0c;易于实现。不是真正的加密&#xff0c;只是编码&#xff0c;可以用于数据传输和存储。 缺点&#xff1a; 不提供数据保密性&#xff0c;容易被解码。 示例代码&#xff1a; // 编码 const encodedData btoa(Hello,…

Windows 使用nvm安装多个版本的node.js

在 Windows 上&#xff0c;首先你需要安装 Node Version Manager。请访问 nvm-windows GitHub 页面并下载最新版本的 nvm-setup.zip 文件。解压并运行里面的安装程序。 安装完成后&#xff0c;你可以按照以下步骤使用 Node Version Manager (nvm) 来安装和管理多个版本的 Node…

前后端分离毕设项目之基于springboot+vue的笔记记录分享网站设计与实现(内含源码+文档+部署教程)

博主介绍&#xff1a;✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久&#xff0c;选择我们就是选择放心、选择安心毕业✌ &#x1f345;由于篇幅限制&#xff0c;想要获取完整文章或者源码&#xff0c;或者代做&am…

【陕西理工大学-数学软件实训】数学实验报告(8)(数值微积分与方程数值求解)

目录 一、实验目的 二、实验要求 三、实验内容与结果 四、实验心得 一、实验目的 1. 掌握求数值导数和数值积分的方法。 2. 掌握代数方程数值求解的方法。 3. 掌握常微分方程数值求解的方法。 二、实验要求 1. 根据实验内容&#xff0c;编写相应的MATLAB程序&#xff0c…

ChatGLM DeepSpeed/P-Tuning v2 调参

之前尝试了基于ChatGLM-6B使用LoRA进行参数高效微调,本文给大家分享使用DeepSpeed和P-Tuning v2对ChatGLM-6B进行微调,相关代码放置在GitHub上面:llm-action。 ChatGLM-6B简介 ChatGLM-6B相关的简介请查看之前的文章,这里不再赘述。 P-Tuning v2简介 P-Tuning是一种较新…

构建工具vite/webpack

一、vite 快速开始 全局安装vite npm i -g vite创建vite npm create vite安装依赖 npm i运行项目 npm run dev 二、webpack 1、使用步骤 初始化项目npm init -y安装依赖webpack、webpack-cli在项目中创建src目录&#xff0c;然后编写代码&#xff08;默认主文件index.js&a…

Linux常用工具

文章目录 前言一、Linux编辑器-vim使用1.vim的基本概念2. vim的基本操作3. vim命令集1. 正常模式1. 模式切换和光标移动2. 删除文字及复制3. 其他操作 2. 底行模式 二、Linux编译器-gcc/g使用1. 命令和选项2. 预处理3. 编译4. 汇编(生成机器可识别代码)5. 连接(生成可执行文件或…

Docker 部署 MongoDB 服务

拉取最新版本的 MongoDB 镜像&#xff1a; $ sudo docker pull mongo:latest在本地预先创建好 db 和 configdb 目录, 用于映射 MongoDB 容器内的 /data/db 和 /data/configdb 目录。 使用以下命令来运行 MongoDB 容器: $ sudo docker run -itd --name mongo --privilegedtru…

C#webform Static DataTable 多人同时操作网页数据重复问题

在C# Web Forms中&#xff0c;如果声明一个static变量&#xff0c;它将在整个应用程序域&#xff08;Application Domain&#xff09;中保持持久化状态。每个用户的请求都在同一个应用程序域中处理&#xff0c;因此static变量在不同页面间保持相同的值。 当一个用户发起请求时…

LCP 02.分式化简

​​题目来源&#xff1a; leetcode题目&#xff0c;网址&#xff1a;110. 平衡二叉树 - 力扣&#xff08;LeetCode&#xff09; 解题思路&#xff1a; 模拟分式计算过程即可。 解题代码&#xff1a; class Solution {public int[] fraction(int[] cont) {if(cont.length1){…

JPEG算法及例程

JPEG&#xff08;Joint Photographic Experts Group&#xff09;是一种常见的图像压缩算法&#xff0c;用于减小图像文件的大小。它是一种有损压缩算法&#xff0c;即通过牺牲一定的图像质量来实现压缩。 以下是一个简单的JPEG压缩算法的例程&#xff1a; 将输入图像转换为YUV…