SpringBoot整合PageHelper

本文详细介绍如何在SpringBoot项目中使用PageHelper分页插件,包括Maven配置、Java配置及Controller分页写法,确保高效实现数据分页。

POM配置

有两种方式,我们这里只使用原生的PageHelper
导入Maven:

    <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper</artifactId>
            <version>4.1.3</version>
        </dependency>

Java配置

在springboot的启动类(WarApplication.java)里面注入:

  @Bean
    PageHelper pageHelper(){
        //分页插件
        PageHelper pageHelper = new PageHelper();
        Properties properties = new Properties();
        properties.setProperty("reasonable", "true");
        properties.setProperty("supportMethodsArguments", "true");
        properties.setProperty("returnPageInfo", "check");
        properties.setProperty("params", "count=countSql");
        pageHelper.setProperties(properties);

        //添加插件
        new SqlSessionFactoryBean().setPlugins(new Interceptor[]{pageHelper});
        return pageHelper;
    }

注意:网上很多文章都不贴插件的注入,所以会失败

Controller分页写法

语句pageNum表示当前页,5表示当前页显示的个数为5个
当前页页设置了默认值为1

    @Autowired
    private BlogMapper blogMapper;

    @ApiOperation(value = "拿到所有博客",notes = "")
    @GetMapping(value = "blogs")
    public R1 ajaxBlog(@RequestParam(value = "pageNum",defaultValue = "1")Integer pageNum){
        PageHelper.startPage(pageNum,5);
        List<Blog> blogList = blogMapper.selectByExample(new BlogExample());
        PageInfo<Blog> pageInfo = new PageInfo<Blog>(blogList);
        return R1.add("blog",pageInfo);
    }

POSTMAN显示结果

当我把页数设置为5的时候,插件会默认选择查询结果的最后一页:

以上便是PageHelper在SpringBoot上的应用;

转载于:https://www.cnblogs.com/ifindu-san/p/9721844.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值