在SpringMVC+Mybatis中一个很方便的分页方法

来源:互联网 发布:深入浅出python 中文 编辑:程序博客网 时间:2024/05/16 14:56
  1. 准备工作,一个为分页功能准备的实体类

    在SpringMVC+Mybatis中一个很方便的分页方法

    基本参数,然后传递一个你要查询的对象(类名随意,自己生成get,set方法)

  2. 在你传递对象的dao层的实现类中写好sql语句,这里用的是Mybatis,所以Dao的实现类就是一个xml文件,一般取名xxxDao.xml或者xxxMapper.xml

    在SpringMVC+Mybatis中一个很方便的分页方法

    一个是查询数据,另外一个是得到数据量

3.然后在dao接口中加入两个方法,跟上面的对应起来

在SpringMVC+Mybatis中一个很方便的分页方法

4.然后在service接口中加入两个方法

在SpringMVC+Mybatis中一个很方便的分页方法

这里的对象则是刚刚写好的分页的实体类对象

5.在service实现类中实现接口中的方法

在SpringMVC+Mybatis中一个很方便的分页方法

6.接下来就是控制层了

在SpringMVC+Mybatis中一个很方便的分页方法

7.然后将数据传到前台

在SpringMVC+Mybatis中一个很方便的分页方法

pageTableForm和userList都是自己前面取的名字,注意对应,别写错了

8.上一步只是传递数据,然后还要加个js,实现页面的分页控制,把下面这段js代码引用到你需要用到分页的页面即可,js代码中有部分可以根据需要修改

$(function() {

var $table = $("table");

var currentPage = 1;

var pageSize = 3;

var sumRows = $table.find("tbody tr").length;

var sumPages = Math.ceil(sumRows/pageSize);

init();

paging(currentPage)

$("#prev").click(function(){

currentPage--;

init();

paging(currentPage);

})

$("#next").click(function(){

currentPage++;

init();

paging(currentPage);

})

var $page = $("<div class='page'></div>");

for(var pageIndex=1;pageIndex<=sumPages;pageIndex++){

$("<a href='#'><span>["+(pageIndex)+"]</span></a>").bind("click",{"newPage":pageIndex},function(event){

currentPage=event.data["newPage"];

init();

paging(currentPage);

}).appendTo($page);

}

$page.insertAfter($table);

function paging(currentPage){

$table.find("tbody tr:not(.prevnext)").hide().slice((currentPage-1)*pageSize,(currentPage)*pageSize).show();

$("#currentPage").val(currentPage+1);

$("#currentPage").text(currentPage);

$("#sumPages").text(sumPages);

}

function init(){

if(currentPage==1){

$("#prev").attr({"disabled":"disabled"});

}else{

$("#prev").removeAttr("disabled");

}

if(currentPage==sumPages){

$("#next").attr({"disabled":"disabled"});

}else{

$("#next").removeAttr("disabled");

}

}

})

9.至此,大功告成,以上也基本通用所有框架,在对应类中写好相应代码即可。

0 1