MybatisPlus之条件构造器 EntityWrapper(四)


前言

还记得上一篇文章最后问到的一个问题吗? “我们仅仅需要继承一个 BaseMapper 即可实现大部分单表 CRUD 操作,难道这就是 MP 的强大之处了吗?”。No,No,No。请学习本篇文章,来了解更多的MP的强大之处!!!

需求问题

现有一个需求,我们需要分页查询 tbl_employee 表中,年龄在 18~50 之间性别为男且
姓名为 xx 的所有用户,这时候我们该如何实现上述需求呢?
MyBatis : 需要在 SQL 映射文件中编写带条件查询的 SQL,并基于 PageHelper 插件完成
分页. 实现以上一个简单的需求,往往需要我们做很多重复单调的工作。普通的 Mapper
能够解决这类痛点吗?
MP: 依旧不用编写 SQL 语句, MP 提供了功能强大的条件构造器 EntityWrapper。

一、EntityWrapper 简介

  1. Mybatis-Plus 通过 EntityWrapper(简称 EW,MP 封装的一个查询条件构造器)或者Condition(与 EW 类似) 来让用户自由的构建查询条件,简单便捷,没有额外的负担,能够有效提高开发效率。
  2. 实体包装器,主要用于处理 sql 拼接,排序,实体参数查询等
  3. 注意: 使用的是数据库字段,不是 Java 属性!
  4. 条件参数说明:
    在这里插入图片描述

二、使用 EntityWrapper 的方式

List<Employee> userList = employeeMapper.selectPage(
 			new Page<Employee>(2, 3),
 			new EntityWrapper<Employee>().eq("last_name", "MybatisPlus")
			.eq("gender", 1)
 			.between("age", 18, 50)
);

三、带条件的查询

List<T> selectList(@Param("ew") Wrapper<T> wrapper);

四、带条件的修改

Integer update(@Param("et") T entity, @Param("ew") Wrapper<T> wrapper);

五、带条件的删除

Integer delete(@Param("ew") Wrapper<T> wrapper);

六、使用 Condition 的方式

Condition 的方式与EntityWrapper的方式的区别是:Condition.create()方法帮着创建了new EntityWrapper()对象,不需要咱们自己创建了,更方便了!

List<Employee> userListCondition = employeeMapper.selectPage(
				new Page<Employee>(2,3), 
				Condition.create()
				.eq("gender", 1)
				.eq("last_name", "MyBatisPlus")
				.between("age", 18, 50));

七、小结

MP: EntityWrapper Condition 条件构造器
MyBatis MBG : xxxExample→Criteria : QBC( Query By Criteria)
Hibernate : 通用 Mapper

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

筱白爱学习

你的鼓励将是我写作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值