美文网首页
十六. springboot整合分页插件PageHelper

十六. springboot整合分页插件PageHelper

作者: 任未然 | 来源:发表于2020-02-11 18:34 被阅读0次

    一. 概述

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

    二. 使用说明

    2.1 导包

    <!-- 分页插件 -->
    <dependency>
        <groupId>com.github.pagehelper</groupId>
        <artifactId>pagehelper-spring-boot-starter</artifactId>
        <version>1.2.3</version>
    </dependency>
    

    2.2 YML配置

    pagehelper:
      autoRuntimeDialect: true
      reasonable: true
      supportMethodsArguments: true
      params: count=countSql
    

    2.3 分页使用示例

    controller层

    @RestController
    @RequestMapping("/pageHelperTest")
    public class PageHelperTest{
        @Autowired
        private UserService userService;
       @RequestMapping()
        public PageInfo<User> pageHelperTest(int pageNum, int pageSize){
            //调用方法进行分页查询
            return userService.findAll(currentPage, pageSize);
        }
    }
    

    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);
        }
    }
    

    返回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
    }
    

    相关文章

      网友评论

          本文标题:十六. springboot整合分页插件PageHelper

          本文链接:https://www.haomeiwen.com/subject/tsoxfhtx.html