个人博客系统第四天之pageHelper的使用

今天完成了首页文章的分页查询,使用的是pageHepler进行分页,下面说一下pagerhelper使用步骤,首先在pom.xm中引入pageHelper插件

<!-- MyBatis分页插件 -->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper</artifactId>
            <version>5.1.2</version>
        </dependency>

1. 在 MyBatis 配置 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="param1" value="value1"/>
	</plugin>
</plugins>

2、在spring配置文件中配置插件*(两处配置一个即可)*

<!--    配置mybatis工厂-->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource"></property>
        <property name="configLocation" value="classpath:mybatis/SqlMapConfig.xml"> </property>
        <!-- 传入PageHelper的插件实现分页 -->
        <property name="plugins">
            <array>
                <!-- 传入插件的对象 -->
                <bean class="com.github.pagehelper.PageInterceptor">
                    <property name="properties">
                        <props>
                            <!--用来识别数据库-->
                            <prop key="helperDialect">mysql</prop>
                            <!--使页数不会越界-->
                            <prop key="reasonable">true</prop>
                        </props>
                    </property>
                </bean>
            </array>
        </property>
    </bean>

3、参数配置详情参照官方文档

https://pagehelper.github.io/docs/

4、简单使用
在要分页的数据集合上面插入一条语句
page代表当前页,pageSize代表每页条数,pageHelper会帮助我们自动分页

public List<Article> findArticleByPage(Integer page, Integer pageSize) {

        PageHelper.startPage(page,pageSize);
        return articleMapper.findArticleByPage();
    }

controller层
将分页集合传入PageInfo中

 List<Article> pages = articleService.findArticleByPage(page, pageSize);
        PageInfo pageInfo = new PageInfo(pages);
        request.setAttribute("pageInfo", pageInfo);
        request.getRequestDispatcher("/index.jsp").forward(request, response);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值