使用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);


    }
通过调用方法传值轻松实现分页查询
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值