1. Sort meaning:
1.1 reduce the pressure on the server side
1.2 give users better user experience
Paging is divided into:
The front page:
Distal tab depends rear tab
Back-end pagination:
mybatis pagination plug-in: PageHelper, support mysql, oracle, db2, sqlServer .... support
2.mybatis pagination plug-in uses:
1. Import jar package:
2. Configure a PageHelper plug-in mybatis global configuration file:
3. Use PageHelper.startPage before our query list () to set the pagination information
public List<Goods> getGoodsList(){
PageHelper.startPage(3,5);
List<Goods> goodsList = goodsMapper.getGoodsList();
PageInfo<Goods> page = new PageInfo(goodsList,3);
System.out.println ( "Pages:" + page.getPages () );
System.out.println ( "Total number of records:" + page.getTotal ());
System.out.println ( "Current page:" + page.getPageNum () );
System.out.println ( "Previous:" + page.getPrePage ());
System.out.println ( "Next:" + page.getNextPage ());
System.out.println ( "Is there a Previous:" + page.isHasPreviousPage ());
System.out.println ( "Is there a Next:" + page.isHasNextPage ());
System.out.println ( "whether home:" + page.isIsFirstPage ());
System.out.println ( "whether the last page:" + page.isIsLastPage ());
System.out.println("PageSize:"+page.getPageSize());
List<Goods> list = page.getList();
for (Goods goods : list) {
System.out.println(goods);
}
// get navigation pages
int[] nums = page.getNavigatepageNums();
System.out.println(Arrays.toString(nums));
return goodsList;
}
4. practical application
Front page 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=" "+pages+"<a onclick='find(this.name)' href='javascript:void(0)' name='"+msg.map.requestURI+"?pageNum="+item+"'>"+(index+1)+"</a> ";
})
$(div).append(firstPage).append(prePage).append(pages).append(nextPage).append(endPage).appendTo($("#page_tr"));
}
}
})
})
<! - Date type conversion ->
function parseDate (obj) {
var = new new DATE a Date (obj);
var = the Date.getFullYear year ();
var = month The date.getMonth () +. 1;
var Day = date.getDate ();
IF (month The <=. 9) {
month The = "0" + month The;
} IF (Day <10) {
Day = "0" + Day;
}
return year + "-" + month The + "- "Day +;
}
<-! defined method, click Previous, Next, page, last page, etc., continue to send an asynchronous request to query and returns the results, and show tab ->
function Find (obj) {
$. ajax ({
of the 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);
});
}
}
})
}