查询专栏:MP默认查询原则
查询的是数据库列名非实体类属性。
实体作为条件构造器构造方法的参数

文章目录

/*** 1.传递的参数如果是实体类* <p>* 注:这种情况传递过来的参数是等值的也就是=* 如果不想等值,例如:like '条件'* 在实体类中,需要处理属性的上面添加@TableField(condition ="%s&lt;#{%s}")* <p>* 里面的condition,可以采用已经有的栗子,如果没有符合你需求的,* 可以参考SqlCondition(比较条件常量定义类)它的形式,仿写除符合自己需求的condition* <p>* 例如:age 小于 条件* age < '传过来的条件'** @TableField(condition ="%s&lt,#{%s}")* age*/@Testpublic void selectByWrapperEntity() {User whereUser = new User();whereUser.setName("刘雨红");whereUser.setAge(32);QueryWrapper<User> queryWrapper = new QueryWrapper<User>(whereUser);List<User> userList = userMapper.selectList(queryWrapper);userList.forEach(System.out::println);}/*sql形式:SELECT id,name,age,email,manager_id,create_time FROM user WHERE name=? AND age=?不等值的sql:SELECT id,name,age,email,manager_id,create_time FROM user WHERE name LIKE CONCAT('%',?,'%') AND age<?*/
    /*** 2.传递的参数如果是实体类和参数条件同时存在,这种情况互不影响,条件都会拼接在where后边* <p>* 注意:不要重复了*/@Testpublic void selectByWrapperEntity2() {User whereUser = new User();whereUser.setName("刘雨红");whereUser.setAge(32);QueryWrapper<User> queryWrapper = new QueryWrapper<>(whereUser);queryWrapper.like("name", "雨").lt("age", 40);List<User> userList = userMapper.selectList(queryWrapper);userList.forEach(System.out::println);}/*sql形式:SELECT id,name,age,email,manager_id,create_time FROM userWHERE name=? AND age=? AND name LIKE ? AND age < ?*/

实体类:

@Data
public class User {// 主键private Long id;//姓名@TableField(condition = SqlCondition.LIKE)private String name;//年龄@TableField(condition ="%s&lt;#{%s}")private Integer age;//邮箱private String email;// 上级idprivate Long manager_id;//创建时间private LocalDateTime createTime;
}

参考SqlCondition类的源码,自定义符合自己需求的表达式

/*** SQL 比较条件常量定义类** @author hubin* @since 2018-01-05*/
public class SqlCondition {/*** 等于*/public static final String EQUAL = "%s=#{%s}";/*** 不等于*/public static final String NOT_EQUAL = "%s&lt;&gt;#{%s}";/*** % 两边 %*/public static final String LIKE = "%s LIKE CONCAT('%%',#{%s},'%%')";/*** % 左*/public static final String LIKE_LEFT = "%s LIKE CONCAT('%%',#{%s})";/*** 右 %*/public static final String LIKE_RIGHT = "%s LIKE CONCAT(#{%s},'%%')";}

想学习更多微服务、分布式、中间件、数据库、项目快速构建等系列技术
请访问http://gblfy.com
让我们一起进步!!!

MyBatis-Plus_实体作为条件构造器构造方法的参数相关推荐

  1. MyBatis-Plus 条件构造器之condition参数

    推荐:MyBatis Plus汇总 MyBatis-Plus 条件构造器之condition参数 首先创建一个数据库表,如下图所示: 然后创建一个Spring Boot项目,pom.xml和配置如下: ...

  2. SpringBoot项目集成Mybatis Plus(五)条件构造器

    Mybatis Plus 提供了强大的条件构造器,在不写sql映射文件的情况下,完成复杂的查询和修改数据的操作. 条件构造器用于生成sql的where条件,包括 QueryWrapper, Updat ...

  3. 第 4 章 MybatisPlus 条件构造器

    第 4 章 MybatisPlus 条件构造器 1.CRUD API 的思考 对于 BaseMapper 中基本 CRUD 方法的思考 继承了 BaseMapper 接口后,我们只能获得基本的 CRU ...

  4. Mybatis Plus使用,条件拼装、自定义分页、多数据源

    MyBatis-Plus(简称 MP)是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发.提高效率而生.文档地址:https://mybatis.plus/gui ...

  5. MyBatisPlus条件构造器Condition的用法

    场景 项目搭建专栏: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/column/info/37194 基础搭建: https://blog.csdn.net/B ...

  6. MybatisPlus条件构造器说明以及selectPage方法

    场景 项目搭建专栏: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/column/info/37194 基础搭建: https://blog.csdn.net/B ...

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

    https://www.cnblogs.com/xianz666/p/13857733.html MybatisPlus学习(四)条件构造器Wrapper方法详解 文章目录 1.条件构造器 2.Que ...

  8. MP条件构造器Wrapper

    5.1 概述 我们在实际操作数据库的时候会涉及到很多的条件.所以MP为我们提供了一个功能强大的条件构造器 Wrapper .使用它可以让我们非常方便的构造条件. ​ 其继承体系如下: ​ 在其子类Ab ...

  9. MyBatis中的多条件查询

    mybatis的多条件查询是后台开发中常见的一种需求,下面直接展示需要实现的效果图: 如上图,我们需要根据四个条件来查询简历信息,而且需求允许某些条件为空,还有一个就是时间段的查询,如果我们使用的常规 ...

最新文章

  1. Win32汇编_基础
  2. Hologres揭秘:高性能原生加速MaxCompute核心原理
  3. [转] Lock-Free 数据结构
  4. Swift之深入解析“对象”的底层原理
  5. 将张量转换为 int32 类型
  6. 南京软件测试自学英语,南京软件测试门槛高吗?南京软件测试学哪些
  7. 2017哈尔滨ACM CCPC-final 总结
  8. java 占位符_Java重要知识点
  9. PrimaDonna智能咖啡机,咖啡也要私人定制
  10. 百度迁徙 迁入人口和迁徙规模爬虫
  11. Redis报错:WRONGTYPE Operation against a key holding the wrong kind of value
  12. window 获取cpu型号_教你如何修改电脑上的CPU型号信息!
  13. 智能指针手表_反对智能手表
  14. iOS 加载本地gif缓慢
  15. 蝙蝠侠最新截图----光影的典型例证
  16. 开发者必看|Android 8.0 新特性及开发指南
  17. “欲望像海水,喝得越多,越是口渴。”欲望过多,
  18. ABP官方文档(五)【多租户】
  19. 基于PHP的租赁商城系统(包括数据库和后台)
  20. 【佳学基因人工智能解码技术系列】在CENTOS环境下安装ANACOND

热门文章

  1. 一文重新认识联邦学习
  2. 推荐系统--矩阵分解(2)
  3. 大端小端模式判断以及数据转换
  4. elasticsearch亿级数据量全量索引导入优化方案
  5. Kafka 集群数据备份 MirrorMaker 详解
  6. 基因大数据:一面是科技,一面是责任
  7. 复杂推理模型从服务器移植到Web浏览器的理论和实战
  8. 码住!Flink Contributor 速成指南
  9. 第九弹 - 脚本模式与参数视图
  10. Flutter快速上车之Widget