JSP图片分页 图片分页,想用displaytag做,但不知道怎么显示,帮帮忙。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用tag 做一个common的,我给你一个分页的tag 但不是图片的,package com.east.crm.taglib;import java.io.Serializable;import java.util.ArrayList;import java.util.List;/** * @author:East(张栋芳) * @date:Jan 2, 2008 * @content:用来保存分页的信息 */public class PageResult implements Serializable { /* 当前页 */ private int pageNo = 1; /* 每页的显示数 */ private int pageSize = 5; /* 记录总数 */ private int recTotal = 0; /* 总页数 */ private int pageTotal = 0; /* 用来保存对象的信息 */ private List list = new ArrayList(); public int getPageNo() { return pageNo; } public void setPageNo(int pageNo) { this.pageNo = pageNo; } public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public int getRecTotal() { return recTotal; } public void setRecTotal(int recTotal) { this.recTotal = recTotal; } public List getList() { return list; } public void setList(List list) { this.list = list; } // 总页数 public int getPageTotal() { int result = 0; if (this.getRecTotal() % this.getPageSize() == 0) { result = this.getRecTotal() / this.getPageSize(); } else { result = this.getRecTotal() / this.getPageSize() + 1; } //System.out.println("总===================="+result); return result; }}-------------------------------------------------------------------------------------package com.east.crm.taglib;import javax.servlet.jsp.JspException;import javax.servlet.jsp.JspWriter;import javax.servlet.jsp.tagext.TagSupport;import com.east.crm.web.form.BaseForm;public class PageTag extends TagSupport { private String formName; public String getFormName() { return formName; } public void setFormName(String formName) { this.formName = formName; } @Override public int doEndTag() throws JspException { try { BaseForm baseForm = null; //获得标签form属性值对应的数据 if (this.formName != null && !this.formName.trim().equals("")) { baseForm = (BaseForm)pageContext.getRequest().getAttribute(this.formName); if (baseForm == null) { baseForm = (BaseForm)pageContext.getSession().getAttribute(this.formName); } if (baseForm != null){ //获得PageResult对象 PageResult res = baseForm.getPageResult(); JspWriter out = pageContext.getOut(); StringBuffer buff = new StringBuffer(); //相应页面的html buff.append("<div id=\"splitPageDiv\" style=\"text-align:right;padding:6px 6px 0 0;\">"); buff.append("<form name='splitForm' action='query.do'>"); buff.append("共:<font color=\"red\">" + res.getRecTotal()+"</font>条 "); buff.append("每页显示 <input type='text' name='pageResult.pageSize' size='2' value='"+ res.getPageSize() +"'> 条"); buff.append("/" + res.getPageTotal() + "页 "); buff.append("当前第 <input type='text' name='pageResult.pageNo' size='2' value='"+ res.getPageNo() +"'> 页 "); //buff.append("<input type='button' value='首页' onclick='clickFirst();'> "); buff.append("<a href='javascript:clickFirst()'>首页</a> "); //buff.append("<input type='button' value='上一页' onclick='clickC();'> "); buff.append("<a href='javascript:clickC()'>上一页</a> "); //buff.append("<input type='button' value='下一页' onclick='clickNext();'> "); buff.append("<a href='javascript:clickNext()'>下一页</a> "); //buff.append("<input type='button' value='尾页' onclick='clickLast();'> "); buff.append("<a href='javascript:clickLast()'>尾页</a> "); buff.append("<input type='button' id='go' value='go' onclick='clickGo();'> "); buff.append("</form>"); //js buff.append("<script language='javaScript'>"); //检查文本框数据的合法性 buff.append("function check(){" + "var pageSize = document.all('pageResult.pageSize').value; var pageNo = document.all('pageResult.pageNo').value;"+ "if(isNaN(pageSize) || isNaN(pageNo)){alert('文本框必须数字!'); return false;}" + "else if(pageSize < 1 || pageNo < 1){alert('文本框必须大于1!'); return false;}" + "else {return true;}" + "}"); //go buff.append("function clickGo(){if (check()){document.splitForm.submit();}}"); //首页 buff.append("function clickFirst(){document.all('pageResult.pageNo').value = 1;if(check())document.splitForm.submit();}"); //上一页 buff.append("function clickC(){var pageno = document.all('pageResult.pageNo').value;" + "if(pageno=pageno-1 >=1){document.all('pageResult.pageNo').value = document.all('pageResult.pageNo').value-1; if(check())document.splitForm.submit();}" + "}"); //下一页 buff.append("function clickNext(){var pageno = parseInt(document.all('pageResult.pageNo').value);" + "if(pageno=pageno+1 <="+res.getPageTotal()+"){document.all('pageResult.pageNo').value = parseInt(document.all('pageResult.pageNo').value)+1; if(check())document.splitForm.submit();}" + "}"); //尾页 buff.append("function clickLast(){document.all('pageResult.pageNo').value = "+res.getPageTotal()+";if(check())document.splitForm.submit();}"); buff.append("</script>"); buff.append("</div>"); //System.out.println(buff.toString()); out.print(buff); } } } catch (Exception e) { e.printStackTrace(); } return 0; } }---------------------------------- package com.east.crm.web.form;import org.apache.struts.action.ActionForm;import com.east.crm.taglib.PageResult;/** * @author:East(张栋芳) * @date:Jan 2, 2009 * @content:用于来封装分页数据的Form */public class BaseForm extends ActionForm { private PageResult pageResult = new PageResult(); public PageResult getPageResult() { return pageResult; } public void setPageResult(PageResult pageResult) { this.pageResult = pageResult; } } <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd"><taglib> <tlibversion>1.2</tlibversion> <jspversion>1.1</jspversion> <shortname>common</shortname> <uri>http://www.east.com.cn/taglibs/common</uri> <tag> <name>splitPage</name> <tagclass>com.east.crm.taglib.PageTag</tagclass> <bodycontent>empty</bodycontent> <attribute> <name>formName</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> </tag> </taglib> 菜鸟求指教 SWF加密 同时访问的问题 web.xml问题 sevlet 及 jdbc 中的 select 语句问题 有关Hibernate与Oracle10g问题,急.... 这几天被Spring搞的脑火!! 在jsp中输入中文,转换到java文件就出现乱码,这是为什么?和tomcat有没有关系,该怎么设置字符集? 求教weblogic 8.1建立虚拟目录,web站点的详细步骤 高手帮忙,怎么解释MIME文件? 如何访问远程数据库! struts hibernate spring 集成问题 !applicationContext-*.xml 不能正常创建加载bean
package com.east.crm.taglib;import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;/**
* @author:East(张栋芳)
* @date:Jan 2, 2008
* @content:用来保存分页的信息
*/
public class PageResult implements Serializable {
/* 当前页 */
private int pageNo = 1;
/* 每页的显示数 */
private int pageSize = 5;
/* 记录总数 */
private int recTotal = 0;
/* 总页数 */
private int pageTotal = 0;
/* 用来保存对象的信息 */
private List list = new ArrayList(); public int getPageNo() {
return pageNo;
} public void setPageNo(int pageNo) {
this.pageNo = pageNo;
} public int getPageSize() {
return pageSize;
} public void setPageSize(int pageSize) {
this.pageSize = pageSize;
} public int getRecTotal() {
return recTotal;
} public void setRecTotal(int recTotal) {
this.recTotal = recTotal;
} public List getList() {
return list;
} public void setList(List list) {
this.list = list;
} // 总页数
public int getPageTotal() {
int result = 0;
if (this.getRecTotal() % this.getPageSize() == 0) {
result = this.getRecTotal() / this.getPageSize();
} else {
result = this.getRecTotal() / this.getPageSize() + 1;
}
//System.out.println("总===================="+result);
return result;
}}
-------------------------------------------------------------------------------------
package com.east.crm.taglib;import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;import com.east.crm.web.form.BaseForm;public class PageTag extends TagSupport { private String formName;
public String getFormName() {
return formName;
}
public void setFormName(String formName) {
this.formName = formName;
}
@Override
public int doEndTag() throws JspException {
try {
BaseForm baseForm = null;
//获得标签form属性值对应的数据
if (this.formName != null && !this.formName.trim().equals("")) {
baseForm = (BaseForm)pageContext.getRequest().getAttribute(this.formName);
if (baseForm == null) {
baseForm = (BaseForm)pageContext.getSession().getAttribute(this.formName);
}
if (baseForm != null){
//获得PageResult对象
PageResult res = baseForm.getPageResult();
JspWriter out = pageContext.getOut();
StringBuffer buff = new StringBuffer();
//相应页面的html
buff.append("<div id=\"splitPageDiv\" style=\"text-align:right;padding:6px 6px 0 0;\">");
buff.append("<form name='splitForm' action='query.do'>");
buff.append("共:<font color=\"red\">" + res.getRecTotal()+"</font>条 ");
buff.append("每页显示 <input type='text' name='pageResult.pageSize' size='2' value='"+ res.getPageSize() +"'> 条");
buff.append("/" + res.getPageTotal() + "页 ");
buff.append("当前第 <input type='text' name='pageResult.pageNo' size='2' value='"+ res.getPageNo() +"'> 页 ");
//buff.append("<input type='button' value='首页' onclick='clickFirst();'> ");
buff.append("<a href='javascript:clickFirst()'>首页</a> ");
//buff.append("<input type='button' value='上一页' onclick='clickC();'> ");
buff.append("<a href='javascript:clickC()'>上一页</a> ");
//buff.append("<input type='button' value='下一页' onclick='clickNext();'> ");
buff.append("<a href='javascript:clickNext()'>下一页</a> ");
//buff.append("<input type='button' value='尾页' onclick='clickLast();'> ");
buff.append("<a href='javascript:clickLast()'>尾页</a> ");
buff.append("<input type='button' id='go' value='go' onclick='clickGo();'> ");
buff.append("</form>");
//js
buff.append("<script language='javaScript'>");
//检查文本框数据的合法性
buff.append("function check(){" +
"var pageSize = document.all('pageResult.pageSize').value; var pageNo = document.all('pageResult.pageNo').value;"+
"if(isNaN(pageSize) || isNaN(pageNo)){alert('文本框必须数字!'); return false;}" +
"else if(pageSize < 1 || pageNo < 1){alert('文本框必须大于1!'); return false;}" +
"else {return true;}" +
"}");
//go
buff.append("function clickGo(){if (check()){document.splitForm.submit();}}");
//首页
buff.append("function clickFirst(){document.all('pageResult.pageNo').value = 1;if(check())document.splitForm.submit();}");
//上一页
buff.append("function clickC(){var pageno = document.all('pageResult.pageNo').value;" +
"if(pageno=pageno-1 >=1){document.all('pageResult.pageNo').value = document.all('pageResult.pageNo').value-1; if(check())document.splitForm.submit();}" +
"}");
//下一页
buff.append("function clickNext(){var pageno = parseInt(document.all('pageResult.pageNo').value);" +
"if(pageno=pageno+1 <="+res.getPageTotal()+"){document.all('pageResult.pageNo').value = parseInt(document.all('pageResult.pageNo').value)+1; if(check())document.splitForm.submit();}" +
"}");
//尾页
buff.append("function clickLast(){document.all('pageResult.pageNo').value = "+res.getPageTotal()+";if(check())document.splitForm.submit();}");
buff.append("</script>");
buff.append("</div>");
//System.out.println(buff.toString());
out.print(buff);
}
}
} catch (Exception e) {
e.printStackTrace();
}
return 0;
}
}
----------------------------------
/**
* @author:East(张栋芳)
* @date:Jan 2, 2009
* @content:用于来封装分页数据的Form
*/
public class BaseForm extends ActionForm { private PageResult pageResult = new PageResult(); public PageResult getPageResult() {
return pageResult;
} public void setPageResult(PageResult pageResult) {
this.pageResult = pageResult;
}
}
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
<taglib>
<tlibversion>1.2</tlibversion>
<jspversion>1.1</jspversion>
<shortname>common</shortname>
<uri>http://www.east.com.cn/taglibs/common</uri>
<tag>
<name>splitPage</name>
<tagclass>com.east.crm.taglib.PageTag</tagclass>
<bodycontent>empty</bodycontent>
<attribute>
<name>formName</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>