构造器,条件构造器,我为什么要用条件构造器,我不明白,我不理解,我手速快,优势在我。
“啪啪啪”,“错了没,错了没”,错了错了,知道知道。哎希,忆往昔峥嵘岁月愁,现实如此骨干使劲摩擦打脸。为后装逼大成,沉浸苦练其功,借先贤之学,开己装之业,以会同道之友,达修行一步。
叹:天不生它构造器,Java开发如长夜。
目录
一、真我自知(Wrapper概述)
1、构造器
构造器就一种方法,负责成员变量(域)初始化的。条件构造器显而易见,构造条件的,下面说的就是mybatis-plus中的神奇操作。
2、Wrapper
Wrapper就是MP提供的一种查询条件封装类,用于构建查询条件。本质就是一抽象类,又有是三个具体的实现类。

Wrapper:条件构造抽象类,最顶端父类
AbstractWrapper:用于查询条件封装,生成 sql 的 where 条件
QueryWrapper:Entity 对象封装操作类,为构建查询条件的工具类;可通过链式调用的方式来添加查询条件,例如 equal、like、in 等条件。通常以 wrapper.eq、wrapper.like、wrapper.in 等形式命名。
UpdateWrapper: Update 条件封装,用于Entity对象更新操作,是构建更新条件的工具类;可通过链式调用的方式来添加更新条件,例如 set、eq、like 等条件。通常以 wrapper.set、wrapper.eq、wrapper.like 等形式命名。
AbstractLambdaWrapper:Lambda 语法使用 Wrapper统一处理解析 lambda 获取 column。
LambdaQueryWrapper:看名称也能明白就是用于Lambda语法使用的查询Wrapper;是 QueryWrapper 的 Lambda 版本,可以通过 Lambda 表达式来构建查询条件,避免硬编码实体类的属性名。它的方法以 lambda 表达式形式命名,例如lambdaWrapper.eq(User::getName, "张三")。
LambdaUpdateWrapper:Lambda 更新封装Wrapper;UpdateWrapper 的 Lambda 版本,用于构建更新条件的工具类,同样可以通过 Lambda 表达式来指定属性名和条件值。
二、常见实例
| 关键字 | 含义 | 样例 | SQL |
| eq | 等于(=) | queryWrapper.eq(“user_name”, “张三”); | user_name=“张三” |
| ne | 不等于(<>) | queryWrapper.ne(“user_name”, “张三”); | user_name<>“张三” |
| gt | 大于(>) | queryWrapper.gt(“level”, 1); | level>1 |
| ge | 大于等于(>=) | queryWrapper.ge(“level”, 1); | level>=1 |
| lt | 小于(<) | queryWrapper.lt(“level”, 1); | level<1 |
| le | 小于等于(<=) |

最低0.47元/天 解锁文章
2961

被折叠的 条评论
为什么被折叠?



