在web中的分页操作

在我们读取数据库中的数据时,往往会因为数据量过大无法在一个页面中完整显示,这时就需要用到分页操作,可以使界面更加简洁又条理。下面介绍分页操作的实现:
1.导入插件pagehelper
这个插件可以方便地帮助我们完成分页的操作,利用里面的方法我们可以设置初始的页码和每一页显示数据的个数。但是在使用之前我们需要在pom中导入依赖关系:

<dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper</artifactId>
            <version>5.1.2</version>
        </dependency>

 

2.在jsp页面中传递参数page(初始页码)和size(每页显示数据个数)
利用a标签的href属性传递,例如:

href="${pageContext.request.contextPath}/user/findAll.do?page=1&size=4"

这里设置初始页码是1,每页显示4个数据。
 
3.在service层的findAll方法中加入page和size参数,然后使用PageHelper.startPage(page,size);语句声明使用。再调用Dao层的方法,例如:
在web中的分页操作
 
4.修改Controller层的结构体
将userInfo封装成pageInfo,例如:
在web中的分页操作
 
5.在前台设置页面显示
在jsp页面中设置点击每个按钮显示的页码,pageInfo.pageNum是当前页码,pageInfo.pageNum-1就是上一页的页码,pageInfo.pageNum+1就是下一页页码,pageInfo.pages是尾页页码,将page置为1就是首页。例如:
在web中的分页操作
 
6.在applicationContext中配置property

 <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>

其中reasonable设置为true可以保证在尾页点击下一页不会报错。

上一篇:springmvc使用PageHelper分页插件


下一篇:TZ_10_spring-sucrity 服务器和页面的权限控制