JavaWeb基础(百度分页算法及实现以及增加和删除功能案例)
1.先实现一个分页算法的分页实体类,
在实体类中,setTotalCount(int totalCount)方法,数据总条数,计算出总页数,
setCurrPage(int currPage)方法,传入当前页数,计算出当前页码对应的起点页码bginNum;,和最后页码endNum.
public class PageBean {
private int totalCount; //数据总条数
private int totalPage; //总页数
private int size=8; //每页显示条数
private int currPage; //当前页数
private int bginNum; //页码的起点和终点
private int endNum; //终点
private List data; //存一页数据
public PageBean() {
super();
}
public PageBean(int totalCount, int totalPage, int size, int currPage,
int bginNum, int endNum, List data) {
super();
this.totalCount = totalCount;
this.totalPage = totalPage;
this.size = size;
this.currPage = currPage;
this.bginNum = bginNum;
this.endNum = endNum;
this.data = data;
}
public int getTotalCount() {
return totalCount;
}
public void setTotalCount(int totalCount) {
this.totalCount = totalCount;
//传入总记录条数时,同时算出总页数
this.totalPage=totalCount/size;
if(totalCount %size !=0){
this.totalPage++;
}
}
public int getTotalPage() {
return totalPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public int getSize() {
return size;
}
public void setSize(int size) {
this.size = size;
}
public int getCurrPage() {
return currPage;
}
public void setCurrPage(int currPage) {
this.currPage = currPage;
//传入当前页数,自动算出首页和尾页
//如果总页数少于十条
if(this.totalPage <10){
//设置开始为1
this.bginNum=1;
this.endNum=this.totalPage;
}else{
bginNum = currPage-5;
endNum=currPage+4;
//如果头部超出
if(bginNum<0){
bginNum=1;
endNum=10;
}
//如果尾部超出
if(endNum>totalPage){
bginNum=totalPage-9;
endNum=totalPage;
}
}
}
public int getBginNum() {
return bginNum;
}
public void setBginNum(int bginNum) {
this.bginNum = bginNum;
}
public int getEndNum() {
return endNum;
}
public void setEndNum(int endNum) {
this.endNum = endNum;
}
public List getData() {
return data;
}
public void setData(List data) {
this.data = data;
}
}