springboot中使用mybatisplus自带插件实现分页的示例代码

 

springboot中使用mybatisplus自带插件实现分页

1.导入mybatisplus分页依赖

<dependency>
          <groupId>com.baomidou</groupId>
          <artifactId>mybatis-plus-extension</artifactId>
          <version>3.4.3.1</version>
      </dependency>

lus-extension</artifactId> <version>3.4.3.1</version> </dependency>

2.添加MybatisPlusConfig配置类

@Configuration
@MapperScan("scan.your.mapper.package")
public class MybatisPlusConfig {

  /**
   * 新的分页插件,一缓和二缓遵循mybatis的规则,需要设置 MybatisConfiguration#useDeprecatedExecutor = false 避免缓存出现问题(该属性会在旧插件移除后一同移除)
   */
  @Bean
  public MybatisPlusInterceptor mybatisPlusInterceptor() {
      MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
      interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.H2));
      return interceptor;
  }

  @Bean
  public ConfigurationCustomizer configurationCustomizer() {
      return configuration -> configuration.setUseDeprecatedExecutor(false);
  }
}

3.测试分页

@Test
void testPage(){
  //1、创建page对象
  //传入两个参数:当前页 和 每页显示的记录数
  Page<User> page = new Page<>(1,3);
  //调用mp分页查询的方法,null为没有条件查询
  userMapper.selectPage(page,null);
 
   Page pageinfo = new Page(page,size);
      //带条件查询
   QueryWrapper<实体类> wrapper = new QueryWrapper<>();
   Map<String, Object> pageMap = new HashMap<>();
   pageMap.put("key", value);
   wrapper.eq("name", value);
   wrapper.allEq(pageMap);
   bbooksMapper.selectPage(pageinfo, wrapper);

  //通过page对象获取分页数据
  System.out.println("当前页码:" + page.getCurrent());//获取当前页
  System.out.println("数据的list集合:" + page.getRecords());//每页数据的list集合
  System.out.println("每页显示的记录数:" + page.getSize());//每页显示的记录数
  System.out.println("总记录数:" + page.getTotal());//总记录数
  System.out.println("总页数:" + page.getPages());//总页数

  System.out.println("是否有下一页:" + page.hasNext());//是否有下一页
  System.out.println("是否有上一页:" + page.hasPrevious());//是否有上一页
}

图片:

关于springboot中使用mybatisplus自带插件实现分页的文章就介绍至此,更多相关springbootmybatisplus分页内容请搜索编程宝库以前的文章,希望以后支持编程宝库

 引言在开发中有时候经常需要一些Http请求,请求数据,下载内容,也有一些简单的分布式应用直接使用Http请求作为跨应用的交互协议。在Java中有不同的Http请求 ...