使用mybatis的pageHelper插件实现分页查询

PageHelper的原理是利用mybatis拦截器,在查询数据库的时候,拦截下SQL,然后进行修改,从而实现分页
我们在是用myatias的可以使用第三方提供的插件来实现数据的分页,PageHelper的原理是利用mybatis拦截器,在查询数据库的时候,拦截下SQL,然后进行修改,从而实现分页
  1. 我们在是用myatias的可以使用第三方提供的插件来实现数据的分页,
    在maven的poom.xml文件中加载所需的包
    <!-- mybatis pager -->
    
    <dependency>
        <groupId>com.github.pagehelper</groupId>
        <artifactId>pagehelper</artifactId>
        <version>4.1.0</version>
    </dependency>
    
    <dependency>
        <groupId>com.github.miemiedev</groupId>
        <artifactId>mybatis-paginator</artifactId>
        <version>1.2.17</version>
    </dependency>
    
    <dependency>
        <groupId>com.github.jsqlparser</groupId>
        <artifactId>jsqlparser</artifactId>
        <version>0.9.4</version>
    </dependency>

  1. 在Spring的mybatis的配置中加上pagehelper配置
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource"/>
    <property name="mapperLocations" value="classpath*:mappers/*Mapper.xml"></property>
    
    <!-- 分页插件 -->
    <property name="plugins">
            <array>
                    <bean class="com.github.pagehelper.PageHelper">
                            <property name="properties">
                                    <value>
                                            dialect=mysql
                                    </value>
                        </property>
                </bean>
            </array>
    </property>
    
    </bean>

    3. 分页实现

通过PageHelper.start("当前第几页”,“每一页数量”)

    public ServerResponse<PageInfo> getProductList( int  pageNum,int pageSize){

        PageHelper.startPage(pageNum,pageSize);
        List<Product> productList=productMapper.getProductList();

        PageInfo pageResult=new PageInfo(productList);

        return  ServerResponse.createBySuccess(pageResult);


    }
通过调用方法传值轻松实现分页查询

猜你喜欢

转载自blog.csdn.net/qq_28938627/article/details/80073155