如何使用MybatisPlus进行数据分页显示

如何使用MybatisPlus进行数据的分页呢?

  1. 使用Mybatis Plus提供的分页插件来简化开发,在MybatisPlusInterceptor的拦截器中添加自动分页的PaginationInnerInterceptor拦截器,当前配置需要交给spring的bean管理,类上添加注解@Configuration。
    1. package com.app.studypro.config;
      
      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;
      
      /**
       * 配置MybatisPlus的配置信息
       *
       * @author Administrator
       */
      @Configuration
      public class MybatisPlusConfig {
      
          @Bean
          public MybatisPlusInterceptor mybatisPlusInterceptor() {
              // 获取MybatisPlus的拦截器链
              MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
              // 添加分页拦截器PaginationInnerInterceptor,实现自动分页
              mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor());
              return mybatisPlusInterceptor;
          }
      
      }
      
  2. 在需要数据分页处构建Page对象,并根据自己的查询条件查找数据库,分页的信息将会直接存储到Page对象中。
    1. 
          /**
           * 用户信息分页
           *
           * @param page     当前页
           * @param pageSize 每页显示条数
           * @param username 用户名
           * @return 返回分页用户信息
           */
          @GetMapping("/page")
          public ResultBean> page(int page, int pageSize, String username) {
              log.info("page = {},pageSize = {},username = {}", page, pageSize, username);
              // 1、构造简单分页模型
              Page pageInfo = new Page<>(page, pageSize);
              // 2、构造条件构造器
              LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>();
              // 3、添加用户名过滤条件,使用模糊匹配,不为空时才生效
              queryWrapper.like(StringUtils.isNotEmpty(username), User::getUsername, username);
              // 4、添加排序条件
              queryWrapper.orderByDesc(User::getUpdateTime);
              // 5、执行查询,查询的结果将会直接存在于pageInfo对象中
              userService.page(pageInfo, queryWrapper);
              return ResultBean.success(pageInfo);
          }
      

你可能感兴趣的:(java,java,开发语言,mybatis)