项目上使用PageHelper分页不生效

在项目中使用PageHelper进行分页查询,首先选择的是新的pagehelper-spring-boot-starter依赖,使用完后发现分页功能不生效,进行排查法发现做的项目不是spingboot项目,最后选择普通版本的版本的pagehelper。

左边是第一次引入的pagehelper包,右边是后面引入的版本。

引入普通版本的配置如下
如果是单独的MyBatis框架,需要在SqlMapConfig.xml添加分页插件的配置
3.1 SqlMapConfig.xml配置

<!--
    plugins在配置文件中的位置必须符合要求,否则会报错,顺序如下:
    properties?, settings?,
    typeAliases?, typeHandlers?,
    objectFactory?,objectWrapperFactory?,
    plugins?,
    environments?, databaseIdProvider?, mappers?
-->
<plugins>
    <!-- com.github.pagehelper为PageHelper类所在包名 -->
    <plugin interceptor="com.github.pagehelper.PageInterceptor">
        <!--数据库方言-->
        <property name="helperDialect" value="mysql"/>
        <!--合理化分页-->
        <property name="reasonable" value="true"/>
    </plugin>
</plugins>

必须注意配置的顺序,顺序出错,会执行报错!

这里PageHelper有一些参数可以设置,具体可以查看官网文档。
pageHelper官网配置文档

3.2 applicationContext.xml

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">  
  <!-- 注意:这里还有其他Spring相关配置 -->
  <property name="plugins">
    <array>
      <bean class="com.github.pagehelper.PageInterceptor">
        <property name="properties">
          <value>
          <!--分页插件会自动检测当前的数据库链接,自动选择合适的分页方式。 
          你可以配置helperDialect属性来指定分页插件使用哪种方言。配置时,可以使用下面的缩写值:-->
            helperDialect=mysql
            
            <!--#分页合理化参数,默认值为false。当该参数设置为 true 时,pageNum<=0 时会查询第一页, 
            pageNum>pages(超过总数时),会查询最后一页。默认false 时,直接根据参数进行查询。-->
            reasonable=true
            
            <!--#支持通过 Mapper 接口参数来传递分页参数,默认值false,分页插件会从查询方法的参数值
            中,自动根据上面 params 配置的字段中取值,查找到合适的值时就会自动分页-->
            supportMethodsArguments=true
            
            <!--#为了支持startPage(Object params)方法,增加了该参数来配置参数映射,用于从对象中根据
            属性 名取值, 可以配置 pageNum,pageSize,count,pageSizeZero,reasonable-->
			params=count=countSql
          </value>
        </property>
      </bean>
    </array>
  </property>
</bean>

注意普通版本pageHelper的依赖版本号,4版本和5版本属性配置是不同的

如果因为版本不同配置问题会报错
ClassNotDeFoundException:com.github.pagehelper.PageInterceptor

具体原因看https://blog.csdn.net/zht741322694/article/details/80029654

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值