分页组件
package com.tarena.dxjf.util.page; import java.io.Serializable; public class Page implements Serializable { /** * 页面大小 * */ public int pageSize=4; /** * * 当前页数 */ private int currentPage=1; /** * 总条数 * */ private int totalItems; /** * 总页数 * */ private int totalPages; /** * 起始条数 * */ private int beginItem; /** * pageinfor页面信息 * */ private String pageInfor; public String getPageInfor() { //javascript代码 String script ="<script type=\"text/javascript\"> " + "function subPage(pageNo){" + "document.pageForm.elements['page.currentPage'].value= pageNo;" + "document.pageForm.submit();" + "}</script>"; // String form = "<form method='post' action='show!show' name='pageForm'>"; //用一个隐藏域存储页码,后台接受的页码,并根据页码求出页面条数 String hidden = "<input type='hidden' name='page.currentPage' value='1'/>"; String pageinfor = script+ hidden; //底面样式 首页 上一页 下一页 尾页 if(this.getCurrentPage()!=1){ pageinfor += "<a href=\"javascript:subPage(1)\">首页</a>|" + "<a href=\"javascript:subPage("+(this.getCurrentPage()-1)+")\">上一页</a>|"; } if(this.getCurrentPage()!=this.getTotalPages()){ pageinfor +="<a href=\"javascript:subPage("+(this.getCurrentPage()+1)+")\">下一页</a>|" + "<a href=\"javascript:subPage("+this.getTotalPages()+")\">尾页</a>"; } //第几页 共几页 pageinfor += "第"+this.getCurrentPage()+"页/共"+this.getTotalPages()+"页 "; //跳第几页 pageinfor += "跳<select onchange=\"javascript:subPage(this.value)\">"; for (int i = 1; i <= this.getTotalPages(); i++) { if(i==this.getCurrentPage()){ pageinfor += "<option value="+i+" selected='selected'>"+i+"</option>"; }else{ pageinfor += "<option value="+i+">"+i+"</option>"; } } pageinfor+="</select>页"; return pageinfor; } public void setPageInfor(String pageInfor) { this.pageInfor = pageInfor; } public Page() { } public Page(int pageSize){ this.pageSize = pageSize; } public int getBeginItem() { return (this.currentPage-1)*this.pageSize; } public void setBeginItem(int beginItem) { this.beginItem = beginItem; } public int getCurrentPage() { if(this.currentPage<1) this.currentPage=1; return currentPage; } public void setCurrentPage(int currentPage) { if(currentPage<1) this.currentPage=1; else this.currentPage = currentPage; } public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public int getTotalItems() { return totalItems; } public void setTotalItems(int totalItems) { this.totalItems = totalItems; } public int getTotalPages() { this.totalPages=this.totalItems/pageSize; if(this.totalItems%pageSize!=0) this.totalPages++; return totalPages; } public void setTotalPages(int totalPages) { this.totalPages = totalPages; } }
package com.tarena.dxjf.util.page; import java.util.List; public class PageBean { /** * 页面 * */ private Page page; /** * 存储显示item的list * */ private List list; public PageBean(Page page, List list) { this.page = page; this.list = list; } public List getList() { return list; } public void setList(List list) { this.list = list; } public Page getPage() { return page; } public void setPage(Page page) { this.page = page; } }
分页组建,借助于这两个类,然后在页面内可以直接通过调用pageBean 实体就可以得出分页显示的信息了。注意form的名字,和后天拼写的javascript中form的名字一致,另外分页显示可以根据自己的需要自己定制分页显示的效果。。。。
posted on 2012-11-15 20:55 NewPanderKing 阅读(234) 评论(0) 收藏 举报
浙公网安备 33010602011771号