Mybatis分页插件PageHelper的配置与基本使用

1.分页意义:

  1.1 减轻服务器端的压力

  1.2 给用户更好的用户体验

  分页分为:

前端分页:

前端分页要依赖后端分页

后端分页:

        mybatis分页插件:PageHelper,支持mysql,oracle,db2,sqlServer....都支持

2.mybatis分页插件使用:

1.导入jar包:

 

2.在mybatis的全局配置文件中配置一个PageHelper的插件:

       

3.在我们查询列表之前使用PageHelper.startPage()来设置分页信息

public List<Goods> getGoodsList(){

      PageHelper.startPage(3,5);

      List<Goods> goodsList = goodsMapper.getGoodsList();

      PageInfo<Goods> page = new PageInfo(goodsList,3);

      System.out.println("总页数:"+page.getPages());

      System.out.println("总记录数:"+page.getTotal());

  System.out.println("当前页:"+page.getPageNum());

           System.out.println("上一页:"+page.getPrePage());

           System.out.println("下一页:"+page.getNextPage());

           System.out.println("是否有上一页:"+page.isHasPreviousPage());

           System.out.println("是否有下一页:"+page.isHasNextPage());

           System.out.println("是否为首页:"+page.isIsFirstPage());

           System.out.println("是否为末页:"+page.isIsLastPage());

           System.out.println("PageSize:"+page.getPageSize());

           List<Goods> list = page.getList();

           for (Goods goods : list) {

                 System.out.println(goods);

            }

                     //获取导航页数

           int[] nums = page.getNavigatepageNums();

           System.out.println(Arrays.toString(nums));

                 return goodsList;

           }

4.实际应用

 

 

 前端页面js:

$(function () {
$.ajax({
type:"get",
url:"${pageContext.request.contextPath}/notice/jsonList",
success:function (msg) {
if(msg.map.status==200){
$(msg.map.page.list).each(function(index,item){
var tr="<tr class='abc' align='center' bgcolor='#FFFFFF' onMouseMove='javascript:this.bgColor='#FCFDEE';' onMouseOut='javascript:this.bgColor='#FFFFFF';' height='22' >"
+"<td><input name='id' type='checkbox' id='id' value='"+item.nid+"' class='np'></td>"
+"<td>"+((msg.map.page.pageNum-1)*msg.map.page.pageSize+(index+1))+"</td>"
+"<td>"+item.ntitle+"</td>"
+"<td align='center'><span >"+item.remark+"</span></td>"
+"<td>"+moment(item.ndate).format("YYYY-MM-DD")+"</td>"
+"<td><a >删除</a> | <a >编辑</a></td>"
+"</tr>";
$("#tr_mark").before(tr);
});
var div="<div></div>";
var firstPage="<a onclick='find(this.name)' href='javascript:void(0);' name='"+msg.map.requestURI+"?pageNum=1'>首页</a>";
var endPage="<a onclick='find(this.name)' href='javascript:void(0);' name='"+msg.map.requestURI+"?pageNum="+msg.map.page.pages+"'>尾页</a>";
var prePage="<a onclick='find(this.name)' href='javascript:void(0)' name='"+msg.map.requestURI+"?pageNum="+(msg.map.page.pageNum-1)+"'>上一页</a>"
var nextPage="<a onclick='find(this.name)' href='javascript:void(0)' name='"+msg.map.requestURI+"?pageNum="+(msg.map.page.pageNum+1)+"'>下一页</a>";
var pages=""
$(msg.map.page.navigatepageNums).each(function (index,item) {
pages="&nbsp;"+pages+"<a onclick='find(this.name)' href='javascript:void(0)' name='"+msg.map.requestURI+"?pageNum="+item+"'>"+(index+1)+"</a> &nbsp;";
})
$(div).append(firstPage).append(prePage).append(pages).append(nextPage).append(endPage).appendTo($("#page_tr"));
}
}
})
})
<!--日期类型转换-->
function parseDate(obj) {
var date = new Date(obj);
var year=date.getFullYear();
var month=date.getMonth()+1;
var day=date.getDate();
if(month<=9){
month="0"+month;
}if (day<10){
day="0"+day;
}
return year+"-"+month+"-"+day;
}
<!--定义方法,点击上一页,下一页,首页,尾页等,继续发送异步请求查询,返回结果,然后分页展示-->
function find(obj) {
$.ajax({
type:"get",
url:obj,
success:function (msg) {
if(msg.map.status==200){
$(".abc").remove();
$(msg.map.page.list).each(function(index,item){
var tr="<tr class='abc' align='center' bgcolor='#FFFFFF' onMouseMove='javascript:this.bgColor='#FCFDEE';' onMouseOut='javascript:this.bgColor='#FFFFFF';' height='22' >"
+"<td><input name='id' type='checkbox' id='id' value='"+item.nid+"' class='np'></td>"
+"<td>"+((msg.map.page.pageNum-1)*msg.map.page.pageSize+(index+1))+"</td>"
+"<td>"+item.ntitle+"</td>"
+"<td align='center'><span >"+item.remark+"</span></td>"
+"<td>"+parseDate(item.ndate)+"</td>"
+"<td><a >删除</a> | <a >编辑</a></td>"
+"</tr>";
$("#tr_mark").before(tr);
});
}
}
})
}

猜你喜欢

转载自www.cnblogs.com/ljl5921/p/11802267.html