(Java)Mybatis学习笔记(三)

news2024/9/21 2:40:14

前言

继续学习MyBatis各种查询功能章节,争取早日学完mybatis

MyBatis中各种查询功能

❄️若查询出的 数据只有一条,可以通过实体类对象或集合接收

❄️若查询出的 数据有多条,可以通过集合接收,一定不能通过实体类对象接收,此时会抛异常TooManyResultsException

查询一个或多个实体类对象

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

查询行或列的数据

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

MyBatis中设置了默认的类型别名(如图所示)

在这里插入图片描述

查询结果以map集合形式返回

查询一条数据转化为map集合

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
查询多条数据

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
@MapKey注解设置当前map集合中的键

在这里插入图片描述

在mapper接口的方法上添加@MapKey注解,此时就可以将每条数据转换的map集合作为值,以某个字段的值作为键,放在同一个map集合里面


特殊SQL的执行

模糊查询

select * from user where username like '%程%';

将会把user这张表里,字段名中含有的记录全部查询出来

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

批量删除

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

动态设置表名

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

添加功能来获取自增主键

mysql知识点

  • 在创建主键的时候可以使用AUTO_INCREMENT关键字进行自增主键设置,设置之后,每插入一条数据后主键都会自动累加1
  • 使用AUTO_INCREMENT=100可以在表级别设定偏移量,比如这里设定为100,即从100开始累加

useGeneratedKeys:设置当前标签中的sql,使用了自增的主键
keyProperty:将自增的主键的值赋值给传输到映射文件中的参数的某个属性

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

小结

今天的学习告一段落了,没有理解难度,只是关于sql语句语法有点遗忘,这个可以慢慢捡起来,明天会把mybatis初步学完,加油~

简单回顾下

文章目录

  • 前言
  • MyBatis中各种查询功能
    • 查询一个或多个实体类对象
    • 查询行或列的数据
    • 查询结果以map集合形式返回
  • 特殊SQL的执行
    • 模糊查询
    • 批量删除
    • 动态设置表名
    • 添加功能来获取自增主键
  • 小结

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

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

相关文章

社区系统项目复盘-8

文章目录任务执行和调度热帖排行生成长图优化网站的性能使用Quartz执行定时任务,实现热帖排行功能时,通过定时任务定时计算帖子分数,降低计算的数据量。使用wkhtmltopdf生成长图。通过多级缓存对热帖功能进行优化,提升网站性能。 …

回归分析-书后习题回顾总结

4-1 题目 理论基础 经典多元线性回归模型 参数β\betaβ的最小二乘估计 设rank(C)m1≤nrank(C)m1≤nrank(C)m1≤n,则β^b(CTC)−1CTY\widehat{\beta}b(C^{T}C)^{-1}C^{T}Yβ​b(CTC)−1CTY是β\betaβ的最小二乘估计 具体解题

[附源码]计算机毕业设计网文论坛管理系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

本田125摩托安装版成型模具设计及仿真(任务书+说明书+工艺卡片+cad图纸+sw三维图)

目录 1 绪论 1 2 模塑工艺规程的编制 3 2.1塑件的工艺性分析 3 2.1.1塑件的原材料分析 3 2.2塑件的结构和尺寸精度及表面质量分析 4 2.2.1结构分析 4 2.2.2尺寸精度分析 4 2.2.3表面质量分析 4 2.3计算塑件的体积和质量 4 2.4塑件成型工艺参数的确定 5 2…

34. 在排序数组中查找元素的第一个和最后一个位置

🌈🌈😄😄 欢迎来到茶色岛独家岛屿,本期将为大家揭晓34. 在排序数组中查找元素的第一个和最后一个位置,做好准备了么,那么开始吧。 🌲🌲🐴🐴 一、题…

[激光原理与应用-36]:《光电检测技术-3》- 光学测量基础 - 光电效应与光电探测器的基本原理

目录 一、概述 二、光电检测的理论基础:光电效应 三、分类 3.1 光子效应 3.2 热效应 四、光电检测器的参数 五、常见的光电探测器 5.1 光电倍增管:微弱光信号转换成电信号 5.2 光电导器件:电阻或电流随着光强的变化而变化 5.3 光伏…

idea 启动报错 Command line is too long

idea 运行启动类报错 Command line is too long 启动报错信息:Error running ‘Application‘: Command line is too long. 翻译过来就是:启动命令过长! 解决方案 1、点开项目启动配置项目; 2、shorten command line 选项选择 J…

(五)进程管理:进程的状态与控制

文章目录一、进程的状态二、进程控制1. 进程控制的原语2. 挂起与激活一、进程的状态 进程的生命周期:从创建到终止的过程 进程的三种基本状态 就绪(Ready) 可运行而未运行的状态,进程已经分配到除了处理机外的所有资源&#xf…

[附源码]计算机毕业设计校园订餐系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

python数据分析及可视化(十六)金融量化(金融工具、金融分析、Tushare安装使用、双均线分析)

金融介绍 金融就是对现有资源进行重新整合之后,实现价值和利润的等效流通。 比如小明想把手里的资金投资给小李,而小李有好的增值项目但是缺少资金,如果小李的项目创业成功,小明的资金就会增长。 金融工具 在金融市场中可交易的…

时序数据库基本概念学习

目录1、时序数据1.1 定义1.2 数学模型1.3 数据特点2、存储优化3、存储原理4、时序数据模型4.1 基于标签(tag-value)4.2 基于树形(tree schema)1、时序数据 1.1 定义 时序数据就是一串按时间维度索引的数据,这类数据描…

C++11闭包函数的几种实现方法

什么是闭包函数 函数就是对传入的一组参数进行运算的行为,闭包函数就是有状态的函数,在参与运算时,除了传入的参数外,还可以对上下文的状态进行运算。类函数运行时就是典型的闭包函数,类函数运行起来后其对象就是状态…

Spring - @PostConstruct 源码解析

文章目录Prejavax.annotation.PostConstruct 注解源码解析扩展示例Pre Spring Boot - 扩展接口一览 javax.annotation.PostConstruct 注解 Documented Retention (RUNTIME) Target(METHOD) public interface PostConstruct { }严格意义上来说这个并不算一个扩展点&#xff0c…

[附源码]计算机毕业设计校园订餐管理系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

文献阅读总结(4)Graph convolution machine for context-aware recommender system

上下文感知的图卷积推荐系统 推荐方面的最新进展表明,可以通过在用户-项目交互图上执行图卷积来学习更好的用户和项目表示,然而,该方法在协同过滤(CF)的场景中有一定的局限性,在这种场景中交互上下文是不可用的。 在这项工作中&…

python关联规则学习:FP-Growth算法对药品进行“菜篮子”分析

产品可以根据销售者进行分类 在Evolution上,有一些顶级类别(“药品”,“数字商品”,“欺诈相关”等)细分为特定于产品的页面。每个页面包含不同供应商的几个列表。 最近我们被客户要求撰写关于关联规则的研究报告&am…

字符串的扩展

字符串解读 es6加强了对Unicode 的支持,允许\uxxxx的形式展现一个字符,例如: console.log(\u0061); // 打印 a\u后面的为字符的 Unicode 码点 \u 后面4位 xxxx 但是这种写法只识别 \u0000 到 \UFFFF 之间的字符,超出需要使用两…

第十七章 管理组件库的pull request

一个好的项目很少会由一个人来独立完成。即使你完成了所有功能实现,也需要有人给你 Review 和提建议、找 Bug。比如添加新的组件、完善文档、添加单元测试、提出改进意见。 这节课我们就介绍一下如何参与开源社区的代码贡献。对于任何一个开源项目,我们…

map容器/multimap容器

目录 1.map基本概念 简介 本质 优点 map和multimap区别 2.map构造和赋值 功能描述: 函数原型 3.map大小和交换 功能描述 函数原型 4 map插入和删除 功能描述 函数原型 5. map查找和统计 功能描述 函数原型 6 map容器排序 学习目标 主要技术点 1.map基本概念…

web入门-爆破

文章目录web21web22web23python脚本php脚本web24web25web26web27web28web21 进入网站,提示要登陆,妥爆破 抓包 注意到最下行的base64编码 发现就是刚刚输入的账号密码 因此这里就是要选择爆破的地方了 发给inruder,添加爆破位 载入题目给…