文件名称:简单易用的自定义标签分页显示
文件大小:3.09MB
文件格式:RAR
更新时间:2012-09-30 04:59:39
分页 自定义 标签 分页显示 分页标签
简单,简易使用
package auvtech;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;
public class PageTag extends TagSupport {
private String name="page";
private String action;
private int measurement;
public void setName(String name) {
this.name = name;
}
public void setAction(String action) {
this.action = action;
}
public void setMeasurement(int measurement) {
this.measurement = measurement;
}
@Override
public int doStartTag() throws JspException {
try{
JspWriter out = pageContext.getOut();
Pageination page=(Pageination)pageContext.getSession().getAttribute(name);
//在page中只有3个属性是已知的,1,一共多少记录,2,一页显示多少记录,3,以及返回的结果集
//1.重新给page分布内容
setPage(page);
//2.输出html
out.print(getHtml(page));
//3.输出js
out.print(getJs(page));
}catch(IOException ioException){
throw new JspException(ioException.getMessage() );
}
return(SKIP_BODY);
}
private void setPage(Pageination page){
if (page.getMaxNoteNum() != 0) {
// 一共多少页
if (page.getOnePageMaxNum() != 0&&page.getMaxNoteNum()
% page.getOnePageMaxNum() == 0) {
page.setMaxPageNum(page.getMaxNoteNum()
/ page.getOnePageMaxNum());
} else if(page.getOnePageMaxNum()!= 0){
page.setMaxPageNum(page.getMaxNoteNum()
/ page.getOnePageMaxNum() + 1);
}
}else {
page.setMaxPageNum(0);
}
//设置当前页记录数目
if(page.getResultList()!= null)
page.setCurrentPageNoteNum(page.resultList.size());
else
page.setCurrentPageNoteNum(0);
}
//生成html代码
private String getHtml(Pageination page){
StringBuffer sb = new StringBuffer();
//添加一个尺寸框
sb.append("量度米尺:");
sb.append("");
sb.append("[ 总发信息 ]: " +
page.getMaxNoteNum() +
"条 ,当前是:第" +
page.getCurrentPage() +
" 页 / 共 " +
page.getMaxPageNum() +
"页 本页 " +
page.getCurrentPageNoteNum() +
" 条");
//首页,上一页,下一页,尾页
if(page.getCurrentPage()>1)
sb.append(" 首页");
else
sb.append("首页");
if(page.getCurrentPage()>1)
sb.append(" 上一页");
else
sb.append("上一页");
if(page.getCurrentPage()
【文件预览】:
lijtPage
----.project(1KB)
----.settings()
--------org.eclipse.core.resources.prefs(108B)
----.mymetadata(297B)
----WebRoot()
--------WEB-INF()
--------index.jsp(195B)
--------META-INF()
----.myeclipse()
----src()
--------auvtech()
----.classpath(1KB)