理解:

原来叫条件构造器,我一直以为都是封装条件对象

即SQL的查询条件,不过都一样。

其目的是因为的实际的需求灵活多变,而我们的SQL的筛选条件也需要跟着变化,

但是有一些固定的字段固定的方式可以保证不变化,那么方法的参数的确定尤为重要

从单一的一个ID,一个String的属性,到一个类型的对象,最后到规范的接口

就是逐渐把可能的情况不断的抽象化,更具有泛用意义

Wrapper的常用方法:

eq方法,名称是equals的缩写,两个参数,一个是数据库表字段的名称,一个是表字段值

userQueryWrapper.eq("user_id", 9); // WHERE user_id = ?

重载方法首参数多加了一个布尔类型,名称condition,MybatisPlus是希望在这个条件成立的情况下装填筛选条件

如果这个条件是必选的也必将会调用的,那么就是使用上面的那种。

boolean condition的意义在于动态SQL,如果给了就执行,没有就不执行

一般在业务逻辑层编写的时候结合IF & ELSE 应地制宜

userQueryWrapper.eq(false,"user_id", 9); // 这个false需要一个变量来灵活操控

不等于:

userQueryWrapper.ne("columnX","valueX"); // columnX != valueX || columnX <> valueX

between方法,即SQL的 WHERE xx字段 BETWEEN 值1 AND 值2

注意,值1一定是小于值2的

userQueryWrapper.between("xxx表字段", 10, 65); // WHERE xx字段 BETWEEN 值1 AND 值2

大于小于、大于等于、小于等于

        userQueryWrapper.gt("xx字段", 20); // WHERE columnX > valueX
userQueryWrapper.lt("xx字段", 20); // WHERE columnX < valueX userQueryWrapper.ge("xx字段", 20); // WHERE columnX >= valueX
userQueryWrapper.le("xx字段", 20); // WHERE columnX <= valueX

按字段排序:

可以是默认和N个字段,默认排序就表示ASC顺序从小到大

也可以指定排序方式,和自定的字段:

众多条件需要进行连接,无非就是AND & OR两种

一般只需要连续引用就表示这些一连串的条件是AND拼接,其中一个条件是可选的,就使用or方法处理

// WHERE xx字段 <= 20 AND columnX > valueX OR xxx表字段 BETWEEN 10 AND 65
userQueryWrapper.le("xx字段", 20).gt("columnX","valueX").or().between("xxx表字段", 10, 65);

如果我们需要更加明确的表示:则使用And方法进行条件嵌套处理:

参考地址:

https://blog.csdn.net/m0_37034294/article/details/82917234

【Mybatis-Plus】05 条件构造器 ConditionConstructor的更多相关文章

  1. mybatis plus的条件构造器

    我们在使用条件构造器的时候要使用QueryWrapper或者UpdateWrapper来充当条件语句来进行构造 QueryWrapper(LambdaQueryWrapper) 和 UpdateWra ...

  2. MyBatis:MyBatis-Plus条件构造器EntityWrapper

    EntityWrapper 简介 1. MybatisPlus 通过 EntityWrapper(简称 EW,MybatisPlus 封装的一个查询条件构造器)或者 Condition(与 EW 类似 ...

  3. 小书MybatisPlus第2篇-条件构造器的应用及总结

    一.条件构造器Wrapper Mybatis Plus为我们提供了如下的一些条件构造器,我们可以利用它们实现查询条件.删除条件.更新条件的构造. 条件构造器用于给如下的Mapper方法传参,通常情况下 ...

  4. MyBatisPlus性能分析插件,条件构造器,代码自动生成器详解

    性能分析插件 我们在平时的开发中,会遇到一些慢sql,测试,druid MP(MyBatisPlus)也提供性能分析插件,如果超过这个时间就停止 不过官方在3.2版本的时候取消了,原因如下 条件构造器 ...

  5. Mybatis-Plus 实战完整学习笔记(十一)------条件构造器删除,修改,conditon

    1.修改功能--其他过滤方式跟select一样 /** * 修改条件构造器 * @throws SQLException */ @Test public void selectUpdate() thr ...

  6. Mybatis-Plus 实战完整学习笔记(十)------条件构造器核心用法大全(下)

    31.升序orderByAsc 31.升序orderByAsc List<Employee> employeeList = employeeMapper.selectList(new Qu ...

  7. Mybatis-Plus 实战完整学习笔记(九)------条件构造器核心用法大全(上)

    一.Mybatisplus通用(公共方法)CRUD,一共17种(3.0.3版),2.3系列也是这么多,这个新版本一定程度进行了改造和删减. 二.构造器UML图(3.0.3)-----实体包装器,主要用 ...

  8. mybatis按datetime条件查询,参数为时间戳时

    mybatis按datetime条件查询,参数为时间戳时,如果数据库为2018-1-1 20:22:10, 你的时间戳也为2018-1-1 20:22:10,但却没找到数据.可能是时差导致的.百度修正 ...

  9. mybatis动态拼接条件的技巧 where 1=1 或者where标签

    /**     * 根据输入的学生信息进行条件检索     * 1. 当只输入用户名时, 使用用户名进行模糊检索:     * 2. 当只输入邮箱时, 使用性别进行完全匹配     * 3. 当用户名 ...

  10. MybatisPlus学习(四)条件构造器Wrapper方法详解

    文章目录 1.条件构造器 2.QueryWrapper 2.1.eq.ne 2.2.gt.ge.lt.le 2.3.between.notBetween 2.4.like.notLike.likeLe ...

随机推荐

  1. react表单处理 受控组件

    将state与表单项中的value值绑定在一起,有state的值来控制表单元素的值,称为受控组件. 绑定步骤: 在state中添加一个状态,作为表单元素的value值 给表单元素绑定change事件, ...

  2. ABC339

    题解不应该流露出太多感情,对吧. E 建议评黄. 首先我们可以想到暴力 dp. 定义 \(dp_i\) 为以 \(a_i\) 为结尾满足题目意思的最长序列的长度. 很明显,时间复杂度为 \(O(n^2 ...

  3. sql的删除语句

    好久没用过sql的删除语句了,今天写删除语句的时候报错了,应该是:   DELETE FROM 表名称 WHERE 列名称 = 值 我写成了: DELETE FROM 表名称 别名 WHERE 别名. ...

  4. 接口加密传输设计及AES加解密代码DEMO

    接口加密传输设计及AES加解密代码DEMO 接口加密的方案设计:可以将请求的json字符串aes加密,通过params字段传输,接口服务端接收到参数,先解密,然后转换成对象.继续业务逻辑的处理.(另外 ...

  5. 微信和支付宝异步回调通知IP白名单

    附一:微信支付回调通知出口IP列表 商户侧对商户回调通知功能开通白名单网段: 上海电信出口网段:101.226.103.0/25 上海联通出口网段:140.207.54.0/25 上海CAP出口网段: ...

  6. java并发和排序的简单例子(Runnable+TreeSet)

    很多时候并发需要考虑线程安全,但也有很多时候和线程安全毛关系都没有,因为并发最大的作用是并行,线程安全仅仅是并发的一个子话题. 例如常常会用于并发运算,并发i/o. 下文是一个练习笔记. 运行环境:w ...

  7. 高通Android Cam-x Actuator Bring up

    高通Android Camera Bring Up Actuator reference:https://blog.csdn.net/mr_zjc/article/details/105736925 ...

  8. LED虚拟拍摄-跟踪算法

    LED虚拟拍摄-跟踪算法 图引用拍摄黑科技,LED虚拟影棚揭秘 标定流程 上面是一台Track设备,现精度比较高的主要是Redspy,Mosys,一般影视用这二种,其底层技术参考SMAL单目+惯性传感 ...

  9. NXP i.MX 8M Plus工业开发板规格书(四核ARM Cortex-A53 + 单核ARM Cortex-M7,主频1.6GHz)

      1 评估板简介 创龙科技TLIMX8MP-EVM是一款基于NXP i.MX 8M Plus的四核ARM Cortex-A53 + 单核ARM Cortex-M7异构多核处理器设计的高性能工业评估板 ...

  10. hadoop集群配置文件与功能对应解析

    以三个节点的集群为例: 总括: nodemanager ,datanode  --> slavesresourcemanager ---------->    yarn namenode ...