简单的SSM框架应用的分页技术

1、 分页的样式:jsp页面导入

<!--  Bootstrap-->
       <link rel="stylesheet" href="http://cdn.bootcss.com/bootstrap/3.3.0/css/bootstrap.min.css">
       <script src="http://cdn.bootcss.com/bootstrap/3.3.0/js/bootstrap.min.js"></script>

2、此插件自己写入,控制页面调转功能(指定跳转页面、每页显示多少条记录的事件)

   <!-- 自定义分页的JS插件 -->
       <script type="text/javascript" src="js/pagination.js"></script>

3、pagination.js插件实现函数

/**
 * DevelopTime:2016/10/31
 * ZZU·WangChengJian
 * MyBatis分页插件
 * 使用注意:
 * 1.引入pagination.js,和分页JSP代码
 * 2.控制层把PageInfo传到前台页面
 */
$(function(){
         $(":button[id!='cpBtn'][id!='lsBtn'][id!='searchBtn']").click(function(){
             var currentPage=$(this).val()   ;  
              //这里可以选择是否接收,因为你不一定使用搜索框,看不懂就不需要改写一样可以分页    
             var keyWord=$("#keyWordInput").val()  ;    
             $("#currentPage").val(currentPage);
             $("#keyWord").val(keyWord);                  //同上
             $("#spForm").submit() ;
         });
         $("#cpMenu a").click(function(){
              var currentPage=$(this).text()  ;  
              var keyWord=$("#keyWordInput").val()  ;
              $("#currentPage").val(currentPage);
              $("#keyWord").val(keyWord);
              $("#spForm").submit() ;
         });
         $("#lsMenu a").click(function(){
              var lineSize=$(this).text()   ;
              var keyWord=$("#keyWordInput").val();
              $("#lineSize").val(lineSize);
              $("#keyWord").val(keyWord);
              $("#spForm").submit() ;
         });

         $("#searchBtn").click(function(){
             var keyWord=$("#keyWordInput").val()  ;
              $("#keyWord").val(keyWord);
              $("#spForm").submit() ;
             return false ;
           });  

    });

4、分页技术

<form action="Controller指向" method="POST" name="spForm" id="spForm">
     <input type="hidden" id="currentPage" name="pageNum" value="${pageInfo.pageNum}">
     <input type="hidden" id="lineSize" name="pageSize" value="${pageInfo.pageSize}">
     <input type="hidden" name="start" value="${start}"/>
     <input type="hidden" name="end" value="${end}"/>
     <input type="hidden" name="oid" value="${oid}"/>
     <input type="hidden" name="courseName" value="${courseName}"/>

     <button type="button" class="btn btn-primary" value="${pageInfo.firstPage}"
      ${pageInfo.pageNum==1?"disabled='disabled'":""}>首页</button>
     <button type="button" class="btn btn-success" value="${pageInfo.prePage}"
      ${pageInfo.prePage==0?"disabled='disabled'":""}>上一页</button>&nbsp;&nbsp;&nbsp;
      跳转到第&nbsp;<div class="btn-group">
      <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" id="cpBtn">${pageInfo.pageNum}&nbsp;&nbsp;<span class="caret"></span></button>
     <ul class="dropdown-menu" role="menu" id="cpMenu">
     <c:forEach begin="1" end="${pageInfo.pages}" var="page">
        <li><a href="#">${page}</a></li>
        </c:forEach>
     </ul>
     </div>&nbsp;页&nbsp;&nbsp;&nbsp;                 
      &nbsp;&nbsp;&nbsp;每页显示&nbsp;<div class="btn-group">
     <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" id="lsBtn">${pageInfo.pageSize}&nbsp;&nbsp;<span class="caret"></span></button>
        <ul class="dropdown-menu" role="menu" id="lsMenu">
        <c:forEach items="${lineSizes}" var="lineSize">
             <li><a href="#">${lineSize}</a></li>
        </c:forEach>
       </ul>
       </div>&nbsp;条&nbsp;&nbsp;&nbsp;                
    <button type="button" class="btn btn-info" value="${pageInfo.nextPage}"
     ${pageInfo.nextPage==0?"disabled='disabled'":""}>下一页</button>
    <button type="button" class="btn btn-danger"value="${pageInfo.lastPage}"
    ${pageInfo.pageNum==pageInfo.lastPage?"disabled='disabled'":""}>尾页</button>
     &nbsp;共 &nbsp;${pageInfo.size}/${pageInfo.total} &nbsp;条</form>

5、Controller层的操作

public String showCourseList(String start, String end, Integer oid, String courseName,
            @RequestParam(value = "pageNum", defaultValue = "1") int pageNum,
            @RequestParam(value = "pageSize", defaultValue = "5") int pageSize, Model model, HttpSession session) {
        List<CourseType> courseTypeList = contentManagerService.courseTypeList();
        model.addAttribute("courseTypeList", courseTypeList);

        PageInfo pageInfo = contentManagerService.courseList(pageNum, pageSize, start, end, oid, courseName);
        // System.out.println("==========="+pageInfo);
        model.addAttribute("pageInfo", pageInfo);

        //一页显示多少条数据
        String[] lineSizes={"5","10"};
        // 数据回显
        model.addAttribute("start", start);
        model.addAttribute("end", end);
        model.addAttribute("oid", oid);
        model.addAttribute("courseName", courseName);
        model.addAttribute("lineSizes", lineSizes);

        return "content";
    }

6、最重要的还要导入分页插件(pom.xml–>mvn项目插件自行导入)

<!--分页插件 -->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper</artifactId>
            <version>4.1.0</version>
        </dependency>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值