java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > springboot集成PageHelper

springboot集成PageHelper分页失效的原因及解决

作者:aq_money

项目启动初期,在集成mybatis的分页插件,自定义封装了一个分页的工具类,方便后期项目的扩展,结果无法分页了,怎么设置搞都没办法正常分页,所以本文将给大家介绍一下springboot集成PageHelper分页失效的原因及解决,需要的朋友可以参考下

前言

项目启动初期,在集成mybatis的分页插件,自定义封装了一个分页的工具类,方便后期项目的扩展。部分的代码如下:

  /**
     * 分页查询
     * 进行count计算
     *
     * @param pageNum  页数
     * @param pageSize 每页数量
     * @param supplier 查询操作
     * @return
     */
    public static <T> PageInfo<T> pageQueryWithCount(int pageNum, int pageSize, Supplier<List<T>> supplier) {
        if (pageNum < 1) pageNum = getDefaultPageNum();
        if (pageSize < 1) pageSize = getDefaultPageSize();
        try {
            Page<T> page = PageHelper.startPage(pageNum, pageSize, true);
            supplier.get();
            return new PageInfo<T>(page);
        } finally {
            PageHelper.clearPage();
        }
    }

问题

结果懵逼了,无法分页了。怎么设置搞都没办法正常分页,把我脑子搞晕乎了哎呀。

分析

 PageInfo<SysUserDO> sysUserDOPageInfo = PageUtils.pageQueryWithCount(pageNum, pageSize, () ->
                sysUserDao.get()
        );
        GenericPageRspBO genericPageRspBO = new GenericPageRspBO();
        genericPageRspBO.setTotal(sysUserDOPageInfo.getTotal());
        genericPageRspBO.setResultList(BeanCopyUtils.deepCopyBeanList(sysUserDOPageInfo.getList(), SysUserBO.class));
        return genericPageRspBO;
  1. 分析问题
  2. 为什么会出现这样的问题呢,在网上找了很久,但是没有找到对应的解决方案。因为项目是springboot工程,项目管理方面跟spring是有差异的,就像昨天对ApplicationContextAware做封装一样,需要使用@Component管理bean是一个道理。可能是maven依赖的问题导致的我的分页插件失效了。一开始使用的maven依赖
        PageHelper.startPage(1,5);
        List<SysUserDO> sysUserDOS = sysUserDao.get();
        PageInfo<SysUserDO> sysUserDOPageInfo = new PageInfo<>(sysUserDOS);

        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>1.4.1</version>
        </dependency>

总结

做人做到底,送佛送到西。今天踩了一个坑。对PageHelper 分页失效的问题进行一下汇总。

以上就是springboot集成PageHelper分页失效的原因及解决的详细内容,更多关于springboot集成PageHelper的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文