知识点·MyBatisPlus分页查询(瑞吉外卖项目)

245 阅读1分钟

一、创建MyBatisPlusConfig配置类

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;

/**
 * mybatis分页
 */
@Configuration  
public class MyBatisPlusConfig {

    /***
     * 分页拦截器
     * @return
     */
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor(){
        MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
        mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor());
        return mybatisPlusInterceptor;
    }
}

二、在Controller层写分页查询方法

/***
 * 分页查询
 * @param page
 * @param pageSize
 * @param name
 * @return
 */
@GetMapping("/page")
public R<Page> pageinfo(int page, int pageSize ,String name){
    //构造分页构造器
    Page employeePage = new Page(page,pageSize);

    //构造条件构造器(搜索框)
    LambdaQueryWrapper<Employee> lambdaQueryWrapper = new LambdaQueryWrapper<>();
    lambdaQueryWrapper.like(name!=null,Employee::getName,name);
    
    //添加排序条件(安装创建时间排序)
    lambdaQueryWrapper.orderByDesc(Employee::getCreateTime);

    //执行查询
    employeeService.page(employeePage,lambdaQueryWrapper);

    return R.success(employeePage);
}