当前位置 : 主页 > 编程语言 > java >

springboot整合mybatis-plus 实现分页查询功能

来源:互联网 收集:自由互联 发布时间:2021-04-10
建一个config类 @Configurationpublic class MybatisPlusConfig { @Bean public PaginationInterceptor paginationInterceptor(){ return new PaginationInterceptor(); }} 编写controller post /article/search/{page}/{size} @PostMapping("search/{p

建一个config类

@Configuration
public class MybatisPlusConfig {

  @Bean
  public PaginationInterceptor paginationInterceptor(){
    return new PaginationInterceptor();
  }
}

编写controller

 post /article/search/{page}/{size}
@PostMapping("search/{page}/{size}")
  public Result findByPage(@PathVariable Integer page,
               @PathVariable Integer size,
              @RequestBody Map<String,Object> map){

    //根据条件分页查询
    Page<Article> pageDate = articleService.findByPage(map,page,size);
    //封装分页返回对象
    PageResult<Article> pageResult =new PageResult<>(
        pageDate.getTotal(),pageDate.getRecords()
    );

    return new Result(true,StatusCode.OK,"查询分页成功",pageResult);
  }

编写service

public Page<Article> findByPage(Map<String, Object> map, Integer page, Integer size) {
    //设置查询条件
    EntityWrapper<Article> wrapper =new EntityWrapper<>();
    Set<String> keySet = map.keySet();
    for (String key : keySet) {
//      if (map.get(key) !=null){
//        wrapper.eq(key,map.get(key));
//      }
      wrapper.eq(map.get(key) !=null,key,map.get(key));
    }
    //设置分页参数
    Page<Article> pageData =new Page<>(page,size);

    //第一个是分页参数,第二个是查询条件
    List<Article> list = articleDao.selectPage(pageData, wrapper);

    pageData.setRecords(list);

    return pageData;
  }

整合完成!!!

到此这篇关于springboot整合mybatis-plus 实现分页查询功能的文章就介绍到这了,更多相关mybatis-plus 分页查询内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

网友评论