2.关于ssm框架-maven中的PageInfo分页插件运用

1.项目用的是ssm框架,没有用maven管理,不能在pom.xml中配置,所以导入相关jar包,2个包

pagehelper-4.1.1.jar

jsqlparser-0.9.4.jar  

2.配置spring-mybatis.xml文件

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">

       < property name="dataSource" ref="dataSource"/>

       < property name="mapperLocations" value="classpath:com/hoomsun/Mapper/*/*.xml" />//这个是我项目目录下的value值,别全复制了

        <property name="plugins">

                <array>

                        <bean class="com.github.pagehelper.PageHelper">

                            <property name="properties">

                                <value>

                                        dialect=oracle     //我用的是oracle

                                        reasonable=true

                                <value>

                            </property>

                        </bean>

                </array>

        </property>

<bean>

3.关键代码片段

    controller层

import com.github.pagehelper.PageHelper;

import com.github.pagehelper.PageInfo;

... ...

@RequestMapping(value="/frequencyLists")//前台展示页面

public String frequencyList(@RequestParam(value="pn",defaultValue="1")Integer pn,HttpServletRequest request,HttpServletResponse                                                response,Model model) throws Exception{

        PageHelper.startPage(pn,5);//传入页面以及每页的大小,5(pageSize)是自己设定,1页有几条数据

        List> frequencyListTotal=frequencyService.selectFrequency();//返回的查询结果

        PageInfo page=new PageInfo(frequencyListTotal,5);//这就算分页完成了

        model.addAttribute("frequencyListTotal",frequencyListTotal);//前台可以拿到这个列表结果

        model.addAttribute("pageInfo", page);//前台可以拿到这个分页结果

        return "frequency/frequencyList";//返回前台

}

    前台分页

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%

@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>

... ...

当前${pageInfo.pageNum}页,总${pageInfo.pages }页,总共${pageInfo.total}条记录  //pageInfo是后台传过来的,参数都是这个插件封装好的,其它参数                                                                                                                                          看API

<ul >

        <li><a href="frequency/frequencyList?pn=${pageInfo.firstPage }">首页</li>

               <a href="frequency/frequencyList?pn=${pageInfo.pageNum-1}" aria-label="Previous>&laquo;/*<<*/

                        <c:forEach var="page_Num" items="${pageInfo.navigatepageNums }">   //遍历每一页

                                <c:if test="${page_Num==pageInfo.pageNum }">  //判断是否是当前页

                                        <li class="active"><a href="frequency/frequencyList?pn=${page_Num }">${page_Num }</a></li>

                                </c:if>

                                   <c:if test="${page_Num==pageInfo.pageNum>

                                 <li><a href="frequency/frequencyList?pn=${page_Num }" > ${page_Num } </a></li>

                                    </c:if>

                        <c:forEach>

                <a href="frequency/frequencyList?pn=${pageInfo.pageNum+1}" aria-label="Next">&raquo;/*<<*/            当前页+1

        <li><a href="frequency/frequencyList?pn=${pageInfo.lastPage }">末页</li>

</ul>

大体思路就是这样

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,785评论 18 399
  • JSP总结(经典) day1 JSP 定义: 1)Java Server Page, Java EE 组件,本...
    java日记阅读 3,529评论 0 13
  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些阅读 2,060评论 0 2
  • 一. Java基础部分.................................................
    wy_sure阅读 3,841评论 0 11
  • 只是概要性的提纲,不想过多的粘贴代码 Base64 单表置换,不能认为是现代加密算法 用于二进制数据传输,密钥存储...
    CatDog118阅读 324评论 0 0