- 同SpringBoot一样,也是用来简化myBatis开发的
- 简单案例:
- 照常建立一个SpringBoot项目
- 由于Idea没有收录myBatis Plus 所以,需要手动添加
- 照常配置文件,然后创建一个UserDao接口并继承BaseMapper<User>,里面封装了许多方法实现,很方便
- 测试即可
- MyBatisPlus简介:
- Redirect 这个国人开发的,就是懒
- MyBatis的分页查询:
- 创建一个IPage对象
- Ipage page=new Page(1,1);
- 使用selectPage方法
- 但是需要注意的是,在实现这个方法时,需要编写一个配置类,不然无法实现分页查询,他只会实现全部查询
- 配置如下
- 剩下的就是对应的查询相关数据的方法了,只要调用就可以
- 但是需要注意的是,在实现这个方法时,需要编写一个配置类,不然无法实现分页查询,他只会实现全部查询
- 创建一个IPage对象
- 条件查询:
- 即在上述的各种select方法中放入一个查询选择器类对象
- 图中gt也就是greater than 大于的意思,lt也就是less than 小于
- 图中采用链式的方式添加,这种情况下默认为与的关系(也可分开一个一个写,功能不变)
- 若是想采用或的方式:
- qw.gt("id",1).or().lt("id",3);
- 在二者之间加上or()方法即可
- 这种条件查询还有包括lambda格式
- 其他也上边一样,比较推荐这种方式编写,当然两种都可
- 处理条件为null值时的情况:
- 在日常生活中很常见的淘宝就有查询功能,其中就会让顾客输入最高价与最低价,但有时,顾客只会输入其中之一,这样就会导致查询失败,所以我们需要对其进行判断是否为空
- 一种思路:(麻烦)
- 使用if判断,是否需要执行
- 另一种(简洁):
- 在我们的lt,gt方法中,有一个参数为Boolean类型,为true就执行该方法
- 这样查询就不会出现空了
- 查询投影:就是对查询后的结果进行变换,如count(*)、groupBy()这样的操作
- 当然并不是所以的查询myBatisPlus都赋予了简易的方法,所以当碰到没有对应方法时,就是用老办法,在UserDao中,使用@Select("")来实现