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

MyBatisPlus-02

一 查询条件的三种

1.按条件查询

 //方式一:按条件查询QueryWrapper qw = new QueryWrapper();qw.lt("age",18);List<User> userList = userDao.selectList(qw);System.out.println(userList);

2.lambda格式按条件查询

//方式二:lambda格式按条件查询QueryWrapper<User> qw = new QueryWrapper<User>();qw.lambda().lt(User::getAge, 10);List<User> userList = userDao.selectList(qw);System.out.println(userList);

3.lambda格式按条件查询2

 //方式三:lambda格式按条件查询LambdaQueryWrapper<User> lqw = new LambdaQueryWrapper<User>();lqw.lt(User::getAge, 10);List<User> userList = userDao.selectList(lqw);System.out.println(userList);

二.并且与或者的关系

 LambdaQueryWrapper<User> lqw = new LambdaQueryWrapper<User>();//并且关系:10到30岁之间//lqw.lt(User::getAge, 30).gt(User::getAge, 10);//或者关系:小于10岁或者大于30岁lqw.lt(User::getAge, 10).or().gt(User::getAge, 30);List<User> userList = userDao.selectList(lqw);System.out.println(userList);

三 null值的处理

在进行条件查询时,如果条件封闭不彻底则会出现null值。

初始:新建一个query包下的query类,继承要添加上下限的实体类,内部属性:年龄,薪资等有范围的数据。

@Data
public class UserQuery extends User {private Integer age2;
}

1.if语句控制

 //模拟页面传递过来的查询数据UserQuery uq = new UserQuery();uq.setAge(10);uq.setAge2(30);//null判定LambdaQueryWrapper<User> lqw = new LambdaQueryWrapper<User>();lqw.lt(User::getAge, uq.getAge2());if( null != uq.getAge()) {lqw.gt(User::getAge, uq.getAge());}List<User> userList = userDao.selectList(lqw);System.out.println(userList);

2.Lambda处理

    LambdaQueryWrapper<User> lqw = new LambdaQueryWrapper<User>();//先判定第一个参数是否为true,如果为true连接当前条件
//        lqw.lt(null != uq.getAge2(),User::getAge, uq.getAge2());
//        lqw.gt(null != uq.getAge(),User::getAge, uq.getAge());lqw.lt(null != uq.getAge2(),User::getAge, uq.getAge2()).gt(null != uq.getAge(),User::getAge, uq.getAge());List<User> userList = userDao.selectList(lqw);System.out.println(userList);

四 查询投影

QueryWrapper适用于可以查询自定义字段的,有些如果不支持,则在dom层下的Mapper进行写入

QueryWrapper<User> lqw = new QueryWrapper<User>();lqw.select("count(*) as count, tel");lqw.groupBy("tel");List<Map<String, Object>> userList = userDao.selectMaps(lqw);System.out.println(userList);

五 条件查询

//条件查询LambdaQueryWrapper<User> lqw = new LambdaQueryWrapper<User>();//等同于=lqw.eq(User::getName,"Jerry").eq(User::getPassword,"jerry");User loginUser = userDao.selectOne(lqw);System.out.println(loginUser);

六 范围查询

LambdaQueryWrapper<User> lqw = new LambdaQueryWrapper<User>();
//        //范围查询 lt le gt ge eq betweenlqw.between(User::getAge,10,30);List<User> userList = userDao.selectList(lqw);System.out.println(userList);

七 模糊查询

 LambdaQueryWrapper<User> lqw = new LambdaQueryWrapper<User>();
//        //模糊匹配 like,其中likeleft,likeright中的left和right是%匹配符的位置lqw.likeLeft(User::getName,"J");List<User> userList = userDao.selectList(lqw);System.out.println(userList);

更多查询条件设置参看  https://mybatis.plus/guide/wrapper.html#abstractwrapper

相关文章:

MyBatisPlus-02

一 查询条件的三种 1.按条件查询 //方式一&#xff1a;按条件查询QueryWrapper qw new QueryWrapper();qw.lt("age",18);List<User> userList userDao.selectList(qw);System.out.println(userList); 2.lambda格式按条件查询 //方式二&#xff1a;lambda格…...

vscode中快速生成vue3模板

步骤&#xff1a;设置 -> 用户代码片段 -> vue.json&#xff08;没有vue.json,选vue也可&#xff09;-> 定义自己所需的代码段 代码段 如下&#xff0c; {"Print to console": {"prefix": "vue3", //键入该值&#xff0c;按tab…...

Liunx C运算符

一、运算符 &#xff08;一&#xff09;算数运算符 1、float和double不能进行取余操作。 &#xff08;二&#xff09;关系运算符 1、逻辑非 2、逻辑与 例子&#xff1a; if(&#xff08;a-1&#xff09;<b&&b) 如果为真则自增&#xff0c;为假不自增 3、逻辑或 …...

【反射】Class类

Class类中包含了类定义的详细信息&#xff0c;可以使用Class类中提供的方法来获取&#xff0c;下面我们先获取Class对象&#xff0c;再介绍Class类中提供的获取类信息的方法。 一、准备工作 在src/test/java目录的cn.horse.reflect.entity包下新建BaseEntity类、UserInfoEnti…...

PyQt 问题记录

1.现成的组件不一定线程安全&#xff0c;&#xff08;包括且不限于数据的修改竞争,和一些组件的崩溃 ) 对于PyQt 的线程使用&#xff0c;可能还需要更谨慎些 保存逻辑 QuestionBox("保存/Save")def Save(self):okFlagFalseerrFlagFalseWriteCmd{}for it in self.Mode…...

云安全—责任共担

0x00 前言 云安全的职责范围实际上一直遵循的是&#xff0c;谁提供谁负责&#xff0c;如果交付给云消费者的时候&#xff0c;交付者使用过程中就要自行负责&#xff0c;也就是我们经常遇到的配置不当等问题&#xff0c;在三层服务模式中&#xff0c;责任互相嵌套&#xff0c;最…...

使用Vscode终端设置window环境变量设置不上

问题描述 在Vscode中打开了一个终端&#xff0c;然后输入 set ENVprod, 但是我使用node 的proces.env.ENV并没有获取到 问题原因 可能是Vscode终端的问题&#xff0c;可以通过电脑自带的CMD去设置环境变量&#xff0c;通过echo查看&#xff0c;发现是没有问题的。...

【微信小程序】自定义组件布局会议OA其他页面(附源码)

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是Java方文山&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的专栏《微信小程序开发实战》。&#x1f3af;&#x1f3a…...

如何使用 MiniGPT-v2

MiniGPT-v2 是一个基于视觉语言模型&#xff08;LLM&#xff09;的多任务学习系统。它可以用于各种视觉语言任务&#xff0c;包括图像描述、图像识别、图像-文本对话等。 本文将介绍如何使用 MiniGPT-v2。 MiniGPT-v2 提供了一个简单的在线演示&#xff0c;可以用于测试模型。…...

python -pandas -处理excel合并单元格问题

对于合并的单元格&#xff0c;不进行处理情况下&#xff0c;会默认输出nan问题 解决方法&#xff1a; class A(object):def __init__(self, xlsx_file_path, sheet_index):self.xlsx_file FileDataProcesser.read_excel(xlsx_file_path, sheet_index)self.sheet_data self.…...

KT6368A的封装怎么画 原理图怎么画 资料怎么看 怎么下载呢

一、简介 KT6368A的封装怎么画 原理图怎么画 资料怎么看 怎么下载呢 也有好几个客户问我们这样的问题&#xff0c;实在是太难了 但是没办法&#xff0c;客户就是上帝&#xff0c;也只能选择认真的回答&#xff0c; 这里对这类型的问题进行统一精细化回复&#xff0c;高手请…...

Linux杀掉僵尸进程方法

说明&#xff1a; 一般在使用pytorch训练网络模型时&#xff0c;可能会不正确的终端训练&#xff0c;导致进程僵尸&#xff0c;GPU依然被占用的情况。 解决办法&#xff1a; 查看进程的ID及其父进程ID指令&#xff1a; ps -ef | grep defunct | more假设输出如下&#xff1a…...

uniapp(uncloud) 使用生态开发接口详情1(创建项目)

开发接口对比时间: 用java开发接口周期太长, 大概5-6个月左右 用php 开发接口周期同样太长, 大概3-4个月左右 用node.js 开发接口周期相对短一点, 大概1-2个月左右 用uniapp 开发接口, 可以不到 1-2周的时间 这里我使用 uniapp 开发接口, 废话不多说了,直接开干 HBuilder官网(…...

Linux内核8. Linux内核的经典调试方式

1 内核调试以及工具总结 内核总是那么捉摸不透, 内核也会犯错, 但是调试却不能像用户空间程序那样, 为此内核开发者为我们提供了一系列的工具和系统来支持内核的调试. 内核的调试, 其本质是内核空间与用户空间的数据交换, 内核开发者们提供了多样的形式来完成这一功能. 2 用户…...

react中如何对props传的参数进行必要的限制

目录 一&#xff1a;总结 二&#xff1a;实现步骤 2.1 安装需要的库 2.2 对props 进行参数限制 3.3 俩种属性限制 3.1 设置静态属性 3.2 设置默认属性值 一&#xff1a;总结 1&#xff1a;react中的 props 用于给组件传递属性&#xff0c;对所传递的属性可以作以下三种限…...

Jmeter —— 接口之间关联调用(获取上一个接口的返回值作为下一个接口的请求参数)

正则表达式&#xff1a; 具体如何操作&#xff1a; 1. 草稿保存&#xff0c; 此请求的响应数据的id 为发布总结的请求参数draft_id 2. 草稿保存的响应数据 3.在草稿保存的请求中&#xff0c;添加后置处理器- 正则表达式提取器&#xff0c; 提取响应数据的id信息 4. 发布总结请…...

Python 机器学习入门之K-Means聚类算法

系列文章目录 第一章 Python 机器学习入门之线性回归 K-Means聚类算法 系列文章目录前言一、K-Means简介1、定义2、例子3、K-Means与KNN 二、 K-Means实现1、步骤2、优化2.1 初始化优化之K-Means2.2 距离优化之elkan K-Means 三、优缺点1、优点2、缺点 前言 学完K近邻算法&a…...

【jmeter】接口测试流程

1、Jmeter简介 Jmeter是由Apache公司开发的一个纯Java的开源项目&#xff0c;即可以用于做接口测试也可以用于做性能测试。 Jmeter具备高移植性&#xff0c;可以实现跨平台运行。 Jmeter可以实现分布式负载。 Jmeter采用多线程&#xff0c;允许通过多个线程并发取样或通过独…...

RTOS(6)任务管理

任务状态理论 我们是怎么实现&#xff0c;两个同优先级的任务之间交替执行的呢&#xff1f; 任务切换的基础&#xff1a;tick中断&#xff01; tick为1ms一个周期&#xff0c;可以通过修改时钟配置修改&#xff1b; running&#xff1a;正在进行的任务3为running&#xff…...

【UE5】 ListView使用DataTable数据的蓝图方法

【UE5】 ListView使用DataTable数据的蓝图方法 ListView 是虚幻引擎中的一种用户界面控件&#xff0c;用于显示可滚动的列表。它可以用于显示大量的数据&#xff0c;并提供了各种功能和自定义选项来满足不同的需求。 DataTable是虚幻引擎中的一种数据表格结构&#xff0c;用于存…...

Pixel Fashion Atelier快速上手:非对称RPG菜单布局与像素按键交互详解

Pixel Fashion Atelier快速上手&#xff1a;非对称RPG菜单布局与像素按键交互详解 1. 项目概览 Pixel Fashion Atelier是一款基于Stable Diffusion与Anything-v5的图像生成工作站&#xff0c;它彻底改变了传统AI工具的界面设计理念。这款工具将复古日系RPG游戏的"明亮城…...

终极分屏游戏解决方案:Nucleus Co-Op 让单机游戏变身多人派对

终极分屏游戏解决方案&#xff1a;Nucleus Co-Op 让单机游戏变身多人派对 【免费下载链接】nucleuscoop Starts multiple instances of a game for split-screen multiplayer gaming! 项目地址: https://gitcode.com/gh_mirrors/nu/nucleuscoop 还在为单机游戏无法本地多…...

实时口罩检测-通用镜像效果展示:绿色框已戴,红色框未戴,一目了然

实时口罩检测-通用镜像效果展示&#xff1a;绿色框已戴&#xff0c;红色框未戴&#xff0c;一目了然 1. 开箱即用的口罩检测方案 在公共场所管理中&#xff0c;快速识别人员是否佩戴口罩一直是个实际需求。传统方法要么需要专业设备&#xff0c;要么准确率不高。今天要介绍的…...

ICLR 2026 | 告别Top-K检索!RF-Mem在嵌入空间逐步重构证据链,实现长记忆渐进式唤醒

今天分享一篇来自大连理工大学、香港城市大学、华为和中国科学技术大学的最新工作 RF-Mem&#xff0c;发表于ICLR 2026。这篇工作关注个性化大模型中的一个关键问题&#xff1a;当用户历史越来越长时&#xff0c;模型到底该怎样从海量记忆里&#xff0c;准确找回“此时此刻最相…...

EasyAnimateV5-7b-zh-InP效果对比:不同Sampling Method(Flow/Euler)画质差异

EasyAnimateV5-7b-zh-InP效果对比&#xff1a;不同Sampling Method&#xff08;Flow/Euler&#xff09;画质差异 你是不是也遇到过这样的困惑&#xff1a;用同一个图生视频模型&#xff0c;同样的图片和提示词&#xff0c;只是换了个采样方法&#xff0c;出来的视频效果就天差…...

Pixel Couplet Gen入门必看:Streamlit Components封装像素春联React组件

Pixel Couplet Gen入门必看&#xff1a;Streamlit Components封装像素春联React组件 1. 项目介绍 Pixel Couplet Gen是一款基于ModelScope大模型驱动的创意春联生成器。与传统春联设计不同&#xff0c;它采用了独特的8-bit像素游戏风格&#xff0c;将中国传统春节元素与复古电…...

Kotlin 2.3.20 正式发布!解构声明不怕写反了

val (email, username) user你确定没写反&#xff1f; 如果 User 的属性顺序是 (username, email)&#xff0c;恭喜你&#xff0c;这段代码已经悄悄埋了一个 bug。更可怕的是&#xff0c;两个属性都是 String 类型&#xff0c;编译器不会报任何错误。 Kotlin 2.3.20 刚刚发布…...

Win11Debloat:让你的Windows系统重获新生的终极优化指南

Win11Debloat&#xff1a;让你的Windows系统重获新生的终极优化指南 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and …...

《C语言学习:判断语句if-else》5

写在前面&#xff1a;本笔记为个人学习各平台C语言系列课程所作&#xff0c;仅供交流学习&#xff0c;不得作他用。1. if基本用法if(/*条件*/){/*做法*/ } //如果满足条件&#xff0c;则做大括号中的事情圆括号中是条件&#xff0c;或者说一个表达式。当它是0&#xff0c;则不执…...

VISA 标准深度剖析:寄存器基控制规范与函数接口研究

VISA 标准深度剖析:寄存器基控制规范与函数接口研究 VISA(Virtual Instrument Software Architecture)是仪器控制领域的标准 API,它为不同总线(GPIB、USB、LAN、PXI 等)提供了统一的编程接口。本文将 VISA 函数按功能分为 8 大类,并逐一解析其作用、核心函数及使用场景…...