后端常用的mybatis-plus方法以及配合querywapper使用
目录
一、插入数据
save方法
二、删除操作
removeById方法
三、更新操作
updateById方法
四、查询操作
selectById方法
五、条件构造器QueryWrapper的更多用法
1.比较操作符
2.逻辑操作符
3.模糊查询
4.空值判断
一、插入数据
save方法
save(T entity):向数据库中插入一条记录。
代码示例:
Student student = new Student();
student.setName("张三");
student.setAge(30);
studentMapper.save(student);
配合QueryWrapper查询后插入(先查询是否存在再插入):
QueryWrapper<Student> queryWrapper = new QueryWrapper<>();queryWrapper.eq("name", "张三");Student existingStudent = studentMapper.selectOne(queryWrapper);if (existingStudent == null) {Student student = new Student();student.setName("张三");student.setAge(30);studentMapper.save(student);}
二、删除操作
removeById方法
根据主键ID删除一条记录。
studentMapper.removeById(1L);
remove方法配合QueryWrapper:根据自定义条件删除记录。
QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
queryWrapper.gt("age", 30);
studentMapper.remove(queryWrapper);
三、更新操作
updateById方法
根据主键 ID 更新一条记录。
Student student = new Student();
student.setId(1L);
student.setAge(30);
studentMapper.updateById(student);
update方法配合QueryWrapper(批量更新):根据自定义条件更新符合条件的记录。
Student student = new Student();
student.setAge(30);
QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
queryWrapper.like("name", "张三");
studentMapper.update(student, queryWrapper);
四、查询操作
selectById方法
根据主键 ID 查询一条记录。
Student student = studentMapper.selectById(1L);
selectOne方法配合QueryWrapper查询单条记录
QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("name", "张三");
Student student = studentMapper.selectOne(queryWrapper);
selectList方法配合QueryWrapper查询多条记录
QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
queryWrapper.lt("age", 30);
List<Student> studentList = studentMapper.selectList(queryWrapper);
selectPage方法配合QueryWrapper进行分页查询
QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
queryWrapper.isNotNull("age");
Page<Student> page = new Page<>(1, 10);
IPage<Student> studentIPage = studentMapper.selectPage(page, queryWrapper);
ListStudent> studentList = studentIPage.getRecords();
long total = studentIPage.getTotal();
五、条件构造器QueryWrapper的更多用法
1.比较操作符
eq:等于。
ne:不等于。
gt:大于。
ge:大于等于。
lt:小于。
le:小于等于。
2.逻辑操作符
and:连接多个条件(默认是and连接)。
or:用于or连接条件。
QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("name", "张三").or().eq("name", "李四");
List<Student> studentList = studentMapper.selectList(queryWrapper);
3.模糊查询
like:左右模糊查询。
notLike:左右不模糊查询。
likeLeft:左模糊查询。
likeRight:右模糊查询。
4.空值判断
isNull:判断字段为null。
isNotNull:判断字段不为null。
getone与last("limit 1")结合用
相关文章:
后端常用的mybatis-plus方法以及配合querywapper使用
目录 一、插入数据 save方法 二、删除操作 removeById方法 三、更新操作 updateById方法 四、查询操作 selectById方法 五、条件构造器QueryWrapper的更多用法 1.比较操作符 2.逻辑操作符 3.模糊查询 4.空值判断 一、插入数据 save方法 save(T entity):向数据库中插入…...
【设计模式】万字详解:深入掌握五大基础行为模式
作者:后端小肥肠 🍇 我写过的文章中的相关代码放到了gitee,地址:xfc-fdw-cloud: 公共解决方案 🍊 有疑问可私信或评论区联系我。 🥑 创作不易未经允许严禁转载。 姊妹篇: 【设计模式】…...
C++ 9.19
练习:要求在堆区申请5个double类型的空间,用于存储5名学生的成绩。请自行封装函数完成 1> 空间的申请 2> 学生成绩的录入 3> 学生成绩的输出 4> 学生成绩进行降序排序 5> 释放申请的空间 主程序中用于测试上述函数 #include<ios…...
[Unity Demo]从零开始制作空洞骑士Hollow Knight第五集:再制作更多的敌人
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、制作敌人另个爬虫Crawler 1.公式化导入制作另个爬虫Crawler素材2.制作另个爬虫Crawler的Crawler.cs状态机3.制作敌人另个爬虫Crawler的playmaker状态机二、…...
怎么把excel翻译成英文?这些翻译技巧记得收藏
在处理Excel数据时,我们常常会遇到多语言的数据集,这无疑给数据分析和整理带来了不小的挑战。 幸运的是,随着技术的发展,现在有多种工具可以帮助我们进行Excel中的批量翻译,这些工具以其强大的翻译功能和便捷的操作方…...
信息技术引领的智能化未来
信息技术引领的智能化未来 随着信息技术的飞速发展,社会各个领域正在加速迈入智能化的新时代。信息技术的广泛应用,尤其是人工智能、大数据、物联网等前沿技术的创新与融合,正在从根本上改变着人们的生产和生活方式。本文将探讨信息技术在智…...
【QT开发-Pyside】使用Pycharm与conda配置Pyside环境并新建工程
知识拓展 Pycharm 是一个由 JetBrains 开发的集成开发环境(IDE),它主要用于 Python 编程语言的开发。Pycharm 提供了代码编辑、调试、版本控制、测试等多种功能,以提高 Python 开发者的效率。 Pycharm 与 Python 的关系 Pycharm 是…...
vue选项式写法项目案例(购物车)
一、初始化项目结构 1.初始化vite项目 npm create vite cd vite-project npm install 2.清理项目结构 清空App.vue 删除components目录下的HelloWorld.vue组件 3.为组件的样式启用sacc或less组件 npm i sass4.初始化index.css全局样式 :root{font-size:12px } 二、封装…...
[Linux][进程] 认识进程
基本概念 进程是一个操作系统术语,用来管理与操作程序.在windows下打开任务管理器即可查看目前打开的所有进程 PCB 进程控制块,从代码层面来说 PCB 是进程所有属性的一个结构体,在Linux源码中PCB指的是struct task_struct. Linux环境下: 进程 task_struct 代码 …...
如何安装和注册 GitLab Runner
如何安装和注册 GitLab Runner GitLab Runner 是一个用于运行 GitLab CI/CD (Continuous Integration/Continuous Deployment) 作业。它是一个与 GitLab 配合使用的应用程序,可以在本地或云中运行。Runner 可以执行不同类型的作业,例如编译代码、运行测…...
专业学习|动态规划(概念、模型特征、解题步骤及例题)
一、引言 (一)从斐波那契数列引入自底向上算法 (1)知识讲解 (2)matlap实现递归 (3)带有备忘录的遗传算法 (4)matlap实现带有备忘录的递归算法 “࿱…...
数据结构与算法 #时间复杂度 #空间复杂度
文章目录 前言 一、算法的复杂度 二、时间复杂度 三、空间复杂度 四、例题 1、例1:冒泡排序 2、例2: 3、例3: 4、例4: 二分查找 5、例5: 阶乘 6、例6: 斐波那契 五、常见算法复杂度 总结 前言 路漫漫其修远兮,吾将上下而求索&…...
【多机器人轨迹规划最优解问题】
此类应用场景通常很难有严格意义上的最优解,一般只能得到较优解。限制其获得最优解的主要因素如下: 一、问题的复杂性 多机器人系统的高维度性:每台机器人都有自己的位置、速度、任务等多个状态变量,多台机器人组合在一起使得问…...
机器学习及其应用领域【金融领域】
机器学习及其应用领域【金融领域】 一、智能投顾与资产配置二、信贷审批与风险评估三、支付与交易安全四、金融欺诈检测五、市场预测与情绪分析六、客户服务与个性化推荐七、面临的挑战与未来趋势八、总结 一、智能投顾与资产配置 智能投顾:通过机器学习技术&#…...
【实战教程】PHP与七牛云的完美对接,你值得拥有!
前言: 随着互联网的迅速发展,越来越多的网站和应用程序需要处理大量的图片、视频和其他文件。为了有效地存储和管理这些文件,并提供快速的内容分发服务,开发者们常常依赖于云存储和CDN服务提供商。 七牛云是一家领先的云存储和CD…...
2024网易低代码大赛 | 想参赛但不知道搭什么?灵感就这么水灵灵地来了!
9月6日-10月15日,报名进行时!戳我即可报名! 如果你还没想好要开发什么作品来参赛,那就必须往下 我们采访了n位网易内部人士,搜罗了他们的建议,给你多一些灵感! 注意:下文仅为本次比赛…...
(附源码)基于django的电力工程作业现场物资管理系统的设计与实现-计算机毕设 22067
基于django的电力工程作业现场物资管理系统的设计与实现 摘 要 随着电力工程的快速发展,作业现场物资管理成为保障工程进度和质量的关键环节。本文旨在设计并实现一个基于Django框架的电力工程作业现场物资管理系统,以提高物资管理的效率和准确性。该系统…...
数据链路层协议 —— 以太网协议
目录 1.数据链路层解决的问题 2.局域网通信方式 以太网 令牌环网 无线局域网 3.以太网协议 以太网帧格式 对比理解Mac地址和IP地址 认识MTU MTU对IP协议的影响 MTU对UDP的影响 MTU对TCP的影响 基于以太网协议的报文转发流程 交换机的工作原理 4.ARP协议 ARP协议…...
【Javascript】一文看懂JS中的symbol到底是什么东西
作为一名经验丰富的 JavaScript 开发者,你可能对 JavaScript 中的各种数据类型已经了如指掌,比如数字、字符串、布尔值和对象。但是你知道吗?JavaScript 还有一种叫做 Symbol 的类型。在这篇文章里,我们将深入探讨 Symbol 的世界&…...
go语言网络编程
网络编程Go语言网络编程相关APIGo语言网络编程架构Go语言的网络编程实现基于以下几个关键原理:bufiobufio 包的主要功能和使用场景主要类型示例 tcp通信解决粘包粘包和拆包的产生原因解决方法示例 网络编程 Go语言网络编程相关API 1.1 net包net.Listen(network, a…...
2026届学术党必备的六大降重复率工具推荐榜单
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 基于自然语言处理技术的智能应用是AI写作工具,它能辅助用户完成文本生成、语法纠…...
【typst-rs】Typst CLI 入口代码解析
这段代码是 Typst CLI 工具的入口点(main.rs),Typst 是一个基于 Rust 的排版系统。让我详细解析这段代码的结构和功能。 模块声明 (1-18行) mod args; mod compile; mod completions; mod deps; mod download; mod eval; mod fonts; mod gree…...
YOLOv8人脸检测架构解析:高精度实时人脸定位技术实战指南
YOLOv8人脸检测架构解析:高精度实时人脸定位技术实战指南 【免费下载链接】yolov8-face yolov8 face detection with landmark 项目地址: https://gitcode.com/gh_mirrors/yo/yolov8-face YOLOv8-face是基于YOLOv8架构优化的专业人脸检测解决方案,…...
Spring Boot 远程调试终于来了!IntelliJ IDEA 新版支持「无 Agent」远程调试
推荐阅读 IDEA 官宣全新AI CLI:Gemini大模型免费用! IDEA 2026.1 EAP 4 发布:新特性太丝滑了! IDEA 官宣:终于可以爽用Cursor了! IDEA 这个骚操作,连 VS Code 都跟不上! IDEA 这个测试接口的好工具,效率 提升 10x 这些 IDEA 技巧没用上,你可能少了一大半摸…...
UABEA:解锁Unity资源编辑新维度的跨平台工具箱
UABEA:解锁Unity资源编辑新维度的跨平台工具箱 【免费下载链接】UABEA c# uabe for newer versions of unity 项目地址: https://gitcode.com/gh_mirrors/ua/UABEA 你是否曾想过深入Unity游戏内部,查看、编辑甚至重构其中的纹理、音频、字体等各类…...
快马AI助力:十分钟用开yun技术栈搭建微服务电商原型
最近尝试用开yun技术栈快速搭建微服务电商原型,发现结合InsCode(快马)平台的AI辅助功能,整个过程比想象中顺畅很多。记录下这个十分钟搭建原型的实践过程,特别适合需要快速验证想法的场景。 技术选型思路 开yun技术栈作为云原生领域的热门选…...
Xbox Game Pass存档提取终极指南:3步实现跨平台游戏进度无缝迁移
Xbox Game Pass存档提取终极指南:3步实现跨平台游戏进度无缝迁移 【免费下载链接】XGP-save-extractor Python script to extract savefiles out of Xbox Game Pass for PC games 项目地址: https://gitcode.com/gh_mirrors/xg/XGP-save-extractor 对于使用X…...
轻量化开源方案解放Alienware潜能:从硬件控制到场景革命
轻量化开源方案解放Alienware潜能:从硬件控制到场景革命 【免费下载链接】alienfx-tools Alienware systems lights, fans, and power control tools and apps 项目地址: https://gitcode.com/gh_mirrors/al/alienfx-tools 当你启动电脑却要等待臃肿的Alienw…...
GetQzonehistory:3步轻松永久备份QQ空间所有历史说说
GetQzonehistory:3步轻松永久备份QQ空间所有历史说说 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 还在担心QQ空间里那些承载青春记忆的说说会突然消失吗?GetQ…...
智慧树自动化学习助手:技术实现与最佳实践指南
智慧树自动化学习助手:技术实现与最佳实践指南 【免费下载链接】zhihuishu 智慧树刷课插件,自动播放下一集、1.5倍速度、无声 项目地址: https://gitcode.com/gh_mirrors/zh/zhihuishu 智慧树在线学习平台作为国内主流的教育资源平台,…...
