当前位置:   article > 正文

springboot整合分页插件PageHelper_springboot整合pagehelper插件

springboot整合pagehelper插件

一. 概述

后端开发80%都是查询操作, 而查询经常涉及到数据分页, 分页工具有很多, 本文介绍的是分页插件PageHelper, 工程基于springboot
参考文章: springBoot mybatis整合pageHelper

二.使用说明

1.导包

<!-- 分页插件 -->
<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper-spring-boot-starter</artifactId>
    <version>1.2.3</version>
</dependency>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2.YML配置

pagehelper:
  autoRuntimeDialect: true
  reasonable: true
  supportMethodsArguments: true
  params: count=countSql
  • 1
  • 2
  • 3
  • 4
  • 5

3.分页使用示例
controller层

@RestController
@RequestMapping("/pageHelperTest/")
public class PageHelperTest{
    @Autowired
    private UserService userService;
    
   @RequestMapping("/pageHelperTest/{pageNum}/{pageSize}")
    public PageInfo<User> pageHelperTest(@PathVariable Integer pageNum, @PathVariable Integer pageSize){
        //调用方法进行分页查询
        return userService.findAll(pageNum, pageSize);
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

service层

@Service
public class UserService{
    @Autowired
    private UserMapper userMapper;
    public PageInfo<User> findAll(int pageNum, int pageSize) {
        // 设置分页参数; pageNum:页码, pageSize:每页大小
        PageHelper.startPage(pageNum,pageSize);
        // 执行sql查询方法查询所有数据, 会自动分页
        List<User> list = userMapper.findAll();
        return new PageInfo<User>(list);
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

返回json结果示例

{
  "pageNum": 3,
  "pageSize": 3,
  "size": 3,
  "startRow": 7,
  "endRow": 9,
  "total": 10,
  "pages": 4,
  "list": [
    {
      "id": 9,
      "username": "bajie",
      "password": "123456",
      "createTime": "2019-06-21T16:00:00.000+0000",
      "trueName": "猪八戒",
      "remarks": null,
      "bz": null
    },
    {
      "id": 10,
      "username": "wukong",
      "password": "123456",
      "createTime": "2019-06-21T16:00:00.000+0000",
      "trueName": "孙悟空",
      "remarks": null,
      "bz": null
    },
    {
      "id": 11,
      "username": "shasheng",
      "password": "123456",
      "createTime": "2019-06-21T16:00:00.000+0000",
      "trueName": "沙悟净",
      "remarks": null,
      "bz": null
    }
  ],
  "prePage": 2,
  "nextPage": 4,
  "isFirstPage": false,
  "isLastPage": false,
  "hasPreviousPage": true,
  "hasNextPage": true,
  "navigatePages": 8,
  "navigatepageNums": [
    1,
    2,
    3,
    4
  ],
  "navigateFirstPage": 1,
  "navigateLastPage": 4,
  "firstPage": 1,
  "lastPage": 4
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55

4.解释
其中:PageHelper.startPage(int PageNum,int PageSize):用来设置页面的位置和展示的数据条目数,我们设置每页展示5条数据。PageInfo用来封装页面信息,返回给前台界面。PageInfo中的一些我们需要用到的参数如下表:
在这里插入图片描述
三.参考
Springboot Mybatis使用pageHelper实现分页查询
Spring Boot入门,整合Pagehelper分页插件

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/88251
推荐阅读
相关标签
  

闽ICP备14008679号