Day3-1 分页插件及Mybatis-plus部署

本文介绍了如何在Java项目中部署Mybatis-Plus分页插件,通过配置PaginationInnerInterceptor实现拦截器。利用LambdaQueryWrapper进行模糊查询、排序等操作,并展示如何结合前端分页参数,通过Mybatis-Plus的page方法实现数据的分页处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 首先在config也就是配置文件夹中添加Mybatis-plusConfig类
@Configuration  --相当于applacation.xml
public class MybatisPlusConfig {
    @Bean		--交由Spring管理
    public MybatisPlusInterceptor mybatisPlusInterceptor(){
            MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
//           加入一个插件
            mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor());
            return mybatisPlusInterceptor;
    }
}
  • addInnerInterceptor(new PaginationInnerInterceptor())相当于加入的拦截器,而PaginationInnerInterceptor()是MybatisPlus提供的分页插件方法。
//  由于前端发送的GET请求 这里需要用到@GetMapping
    @GetMapping("/page")
    public R<Page> page(int page, int pageSize,String name){
        log.info("page = {}, pageSize = {},name = {}",page,pageSize,name);
//        构造分页构造器
        Page pageInfo = new Page(page,pageSize);
//        构造条件构造器
        LambdaQueryWrapper<Employee> queryWrapper = new LambdaQueryWrapper();
//        添加过滤条件
        queryWrapper.like(StringUtils.isNotEmpty(name),Employee::getName,name);
//        添加排序条件
        queryWrapper.orderByDesc(Employee::getUpdateTime);
//        执行查询
        employeeService.page(pageInfo,queryWrapper);
        return R.success(pageInfo);
    }
  • 动态封装使用LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper();
  • queryWraper.like相当于数据库的模糊查询,提供是三个参数,第一个参数为布尔值,true就执行,第二个参数为数据库中相对应的字段,第三个参数为要模糊查询的值
queryWrapper.like(StringUtils.isNotEmpty(name),Employee::getName,name);
  • queryWrapper基本提供了大多数简单查询的封装方法,如排序,具体如下 (其中参数为查询条件==>按照updateTime排序)
queryWrapper.orderByDesc(Employee::getUpdateTime);
  • MybatisPlus提供的page方法,将前端传过来的分页条数和分页页数pageInfo和数据库查询出来的数据queryWrapper进行整合,也就是我们说的进行分页。
employeeService.page(pageInfo,queryWrapper)

这里不需要返回数据是因为page已经将封装好的数据复制给相对应的对象,比如records,total,size已经被赋值,只要把pageInfo返回去就可以了

return R.success(pageInfo);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值