分页导航的JavaBean
2018-08-19 本文已影响0人
神坛下的我
Page.java
/**
* 分页导航的JavaBean
* @author Administrator
*
*/
public class Page {
private int pageSize =10;//每页显示的记录数
private int currentPage = 1;//当前页
private int totalPage = 0;//总页数
private int totalRows = 0;//总记录数
private boolean hasBefore = false;//是否有上一页
private boolean hasNext = false;//是否有下一页
private String linkHTML="";//用于保存分页导航的HTML代码
private String pageURL;//具体的链接地址
/*单击的是首页*/
public void firstPage(){
currentPage=1;//当前页为1
this.setHasBefore(false);//没有上一页
this.refresh();//单击“首页”应该设置是否有上一页和下一页
}
/*单击的是上一页*/
public void beforePage(){
currentPage--;//当前页的值减1
this.refresh();//单击“上一页”应该设置是否有上一页和下一页
}
/*单击的是下一页*/
public void nextPage(){
if(currentPage<totalPage){
currentPage++;//当前页的值加1
}
this.refresh();//单击“下一页”应该设置是否有上一页和下一页
}
/*单击的是尾页*/
public void lastPage(){
currentPage=totalPage;//当前页的值等于总页数
this.setHasNext(false);//没有下一页
this.refresh();//单击“尾页”应该设置是否有上一页和下一页
}
/*根据用户操作,判断是否有上一页和下一页*/
private void refresh() {
if(totalPage<=1){ //总页数小于等于1,没有上一页和下一页
this.setHasBefore(false);
this.setHasNext(false);
}else if (currentPage==1) {//当前页为首页,有下一页
this.setHasBefore(false);
this.setHasNext(true);
}else if (currentPage==totalPage) {//当前页为尾页,有上一页
this.setHasBefore(true);
this.setHasNext(false);
}else {//除以上,都有上一页和下一页
this.setHasBefore(true);
this.setHasNext(true);
}
}
public int getTotalPage() {
totalPage = ((totalRows+pageSize)-1)/pageSize;//计算总页数
return totalPage;
}
/*
* 获得分页导航的方法,主要根据是否有上一页和下一页来判断
* */
public String getLinkHTML() {
linkHTML+="共"+this.totalRows+"条记录 ";
if(this.hasBefore){//如果有上一页,添加上一页的超链接代码
linkHTML+="<a href '"+this.pageURL+"?currPage=1'>首页</a>";
linkHTML+=" ";
linkHTML+="<a href '"+this.pageURL+"?currPage="+this.currentPage+"&action=before'>上一页</a>";
linkHTML+=" ";
}else {//如果没有上一页
linkHTML+="首页 上一页 ";
}
if (this.hasNext) {//如果有下一页,添加下一页的超链接代码
linkHTML+="<a href '"+this.pageURL+"?currPage="+this.currentPage+"&action=next'>下一页</a>";
linkHTML+=" ";
linkHTML+="<a href '"+this.pageURL+"?currPage="+this.totalPage+"'>尾页</a>";
linkHTML+=" ";
}else {//如果没有下一页
linkHTML+="下一页 尾页 ";
}
linkHTML+="当前为"+this.currentPage+"/"+this.totalPage+"页";
return linkHTML;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getCurrentPage() {
return currentPage;
}
public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public int getTotalRows() {
return totalRows;
}
public void setTotalRows(int totalRows) {
this.totalRows = totalRows;
}
public boolean isHasBefore() {
return hasBefore;
}
public void setHasBefore(boolean hasBefore) {
this.hasBefore = hasBefore;
}
public boolean isHasNext() {
return hasNext;
}
public void setHasNext(boolean hasNext) {
this.hasNext = hasNext;
}
public void setLinkHTML(String linkHTML) {
this.linkHTML = linkHTML;
}
public String getPageURL() {
return pageURL;
}
public void setPageURL(String pageURL) {
this.pageURL = pageURL;
}
}