- 需求分析
- 代码开发
- 测试前端数据
- 配置MP的分页插件
- 编写MybatisPlusConfig.java
- 编写分页查询方法
- 编写EmployeeController.java
- 测试正常
- 完善分页查询方法
- 功能测试
- 测试成功
- 分页条设置 - vue
- 测试运行
- 补充status参数
- 怎么变成“正常”的
配置MP的分页插件 编写MybatisPlusConfig.java我们只是刷新主页面,前端就会查询返回page数据,我们要写逻辑实现
package com.taotao.reggie.controller;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@SuppressWarnings({"all"})
@Configuration //因为是个配置类,所以加个Configuration注解
public class MybatisPlusConfig {
//Interceptor:拦截器
@Bean //需要Spring来管理,所以加了Bean
public MybatisPlusInterceptor mybatisPlusInterceptor(){
MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor());
return mybatisPlusInterceptor;
}
}
编写分页查询方法
编写EmployeeController.java
//因为前端是一个Get请求,所以GetMapping
@GetMapping("/page") //因为类上RequestMapping有("/employee"),所以我们直接("/page")
//泛型Page是MP封装的一个类
public R page(int page,int pageSize,String name){ //注意,这里的name参数是根据前端参数来得,name是根据姓名查询的参数
log.info("page = {},pageSize = {},name = {}",page,pageSize,name); //{ }是Slf4j注解log.info方法里的占位符
return null;
}
测试正常
完善分页查询方法加入name参数
//因为前端是一个Get请求,所以GetMapping
@GetMapping("/page") //因为类上RequestMapping有("/employee"),所以我们直接("/page")
//泛型Page是MP封装的一个类
public R page(int page,int pageSize,String name){ //注意,这里的name参数是根据前端参数来得,name是根据姓名查询的参数
log.info("page = {},pageSize = {},name = {}",page,pageSize,name); //{ }是Slf4j注解log.info方法里的占位符
//构造分页构造器
Page pageInfo = new Page(page, pageSize);
//构造条件构造器(是否传入name)
LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper();
//添加过滤条件,name不等于空
queryWrapper.like(StringUtils.isNotEmpty(name),Employee::getName,name);
//添加排序条件
queryWrapper.orderByDesc();
//执行查询
employeeService.page(pageInfo,queryWrapper);
return R.success(pageInfo);
}
功能测试
测试成功
分页条设置 - vue
测试运行 补充status参数 怎么变成“正常”的默认是10条数据一页,我们可以设置1条数据一页测试



