📄 pagerutil.java
字号:
package com.cnpoint.myspaces.common.util;
import java.util.ResourceBundle;
public class PagerUtil {
private static String HEADER;
private static int MAX_PAGE_INDEX;
static ResourceBundle prop;
static
{
MAX_PAGE_INDEX = 200;
HEADER = "Result page";
prop = null;
prop = ResourceBundle.getBundle("application_zh_CN");
HEADER = prop.getString("pager.header.title");
MAX_PAGE_INDEX = Integer.parseInt(prop.getString("pager.max.page.index"));
}
public PagerUtil()
{
System.out.print("分页代码");
}
/**
* 不带参数的分页代码
* @param offset
* @param length
* @param size
* @param url
* @return
*/
public static String generate(int offset, int length, int size, String url)
{
String pref1 = "&";
String param = "page.size" + length;
String pref;
if(url.indexOf("?") > -1)
pref = "&";
else
pref = "?";
int pageNum = 0;
int pageNo = offset / size + 1;
if(length % size == 0)
pageNum = length / size;
else
pageNum = length / size + 1;
StringBuffer header = new StringBuffer();
header.append(HEADER + ": ");
header.append(prop.getString("taw.total") + " ");
header.append(String.valueOf(pageNum) + " "+prop.getString("taw.page"));
header.append(String.valueOf(length) + " ");
header.append(prop.getString("taw.piece") + " ");
header.append(prop.getString("taw.pageDescription") + " ");
header.append("<select name=\"page\" onchange=\"goPage();\">");
for(int i = 1; i <= pageNum; i++)
{
header.append("<option value='" + (i - 1) * size + "'");
if(pageNo == i)
header.append(" selected");
header.append(">" + i + "</option>");
}
header.append("</select>" + prop.getString("taw.page") + " ");
if(offset > 0)
header.append(" <a href=\"" + url + pref + param + pref1 + "pager.size=" + length + "&pager.offset=" + (offset - size) + "\">" + prop.getString("label.prePage") + "</a>\n");
int radius = (MAX_PAGE_INDEX / 2) * size;
int start;
if(offset < radius)
start = 0;
else
if(offset < length - radius)
start = offset - radius;
else
start = (length / size - MAX_PAGE_INDEX) * size;
if(offset < length - size)
header.append(" <a href=\"" + url + pref + param + pref1 + "pager.size=" + length + "&pager.offset=" + (offset + size) + "\">" + prop.getString("label.nextPage") + "</a>\n");
header.append("\n");
header.append("<script language=\"javascript\">\n");
header.append("<!--\n");
header.append("function goPage()\n{window.location=\"" + url + pref + param + pref1 + "pager.size=" + length + "&pager.offset=\"" + " + document.all.page.value;}\n");
header.append("-->\n");
header.append("</script>");
//System.out.println("Pager:"+header.toString());
return header.toString();
}
/**
* 带参数的分页模式
* @param offset
* @param length
* @param size
* @param url
* @param param
* @return
*/
public static String generate(int offset, int length, int size, String url, String param)
{
String pref1 = "&";
String pref;
if(url.indexOf("?") > -1)
pref = "&";
else
pref = "?";
int pageNum = 0;
int pageNo = offset / size + 1;
if(length % size == 0)
pageNum = length / size;
else
pageNum = length / size + 1;
StringBuffer header = new StringBuffer();
header.append(HEADER + ": ");
header.append(prop.getString("taw.total") + " ");
header.append(String.valueOf(pageNum) + " "+prop.getString("taw.page"));
header.append(String.valueOf(length) + " ");
header.append(prop.getString("taw.piece") + " ");
header.append(prop.getString("taw.pageDescription") + " ");
header.append("<select name=\"page\" onchange=\"goPage();\">");
for(int i = 1; i <= pageNum; i++)
{
header.append("<option value='" + (i - 1) * size + "'");
if(pageNo == i)
header.append(" selected");
header.append(">" + i + "</option>");
}
header.append("</select>" + prop.getString("taw.page") + " ");
if(offset > 0)
header.append(" <a href=\"" + url + pref + param + pref1 + "pager.size=" + length + "&pager.offset=" + (offset - size) + "\">" + prop.getString("label.prePage") + "</a>\n");
int radius = (MAX_PAGE_INDEX / 2) * size;
int start;
if(offset < radius)
start = 0;
else
if(offset < length - radius)
start = offset - radius;
else
start = (length / size - MAX_PAGE_INDEX) * size;
if(offset < length - size)
header.append(" <a href=\"" + url + pref + param + pref1 + "pager.size=" + length + "&pager.offset=" + (offset + size) + "\">" + prop.getString("label.nextPage") + "</a>\n");
header.append("\n");
header.append("<script language=\"javascript\">\n");
header.append("<!--\n");
header.append("function goPage()\n{window.location=\"" + url + pref + param + pref1 + "pager.size=" + length + "&pager.offset=\"" + " + document.all.page.value;}\n");
header.append("-->\n");
header.append("</script>");
return header.toString();
}
public static String generateOld1(int offset, int length, int size, String url)
{
if(length > size)
{
String pref;
if(url.indexOf("?") > -1)
pref = "&";
else
pref = "?";
String header = "<font face='Helvetica' size='-1'>" + HEADER + ": ";
if(offset > 0)
header = header + " <a href=\"" + url + pref + "pager.offset=" + (offset - size) + "\">" + prop.getString("label.prePage") + "</a>\n";
int radius = (MAX_PAGE_INDEX / 2) * size;
int start;
if(offset < radius)
start = 0;
else
if(offset < length - radius)
start = offset - radius;
else
start = (length / size - MAX_PAGE_INDEX) * size;
for(int i = start; i < length && i < start + MAX_PAGE_INDEX * size; i += size)
{
if(i == offset)
header = header + "<b>" + (i / size + 1) + "</b>\n";
else
header = header + " <a href=\"" + url + pref + "pager.offset=" + i + "\">" + (i / size + 1) + "</a>\n";
}
if(offset < length - size)
header = header + " <a href=\"" + url + pref + "pager.offset=" + (offset + size) + "\">" + prop.getString("label.nextPage") + "</a>\n";
header = header + "</font>";
return header;
} else
{
return "";
}
}
public static String generateOld2(int offset, int length, int size, String url, String param)
{
String pref1 = "&";
if(length > size)
{
String pref;
if(url.indexOf("?") > -1)
pref = "&";
else
pref = "?";
String header = "<font face='Helvetica' size='-1'>" + HEADER + ": ";
if(offset > 0)
header = header + " <a href=\"" + url + pref + "pager.offset=" + (offset - size) + pref1 + param + "\">" + prop.getString("label.prePage") + "</a>\n";
int radius = (MAX_PAGE_INDEX / 2) * size;
int start;
if(offset < radius)
start = 0;
else
if(offset < length - radius)
start = offset - radius;
else
start = (length / size - MAX_PAGE_INDEX) * size;
for(int i = start; i < length && i < start + MAX_PAGE_INDEX * size; i += size)
{
if(i == offset)
header = header + "<b>" + (i / size + 1) + "</b>\n";
else
header = header + " <a href=\"" + url + pref + "pager.offset=" + i + pref1 + param + "\">" + (i / size + 1) + "</a>\n";
}
if(offset < length - size)
header = header + " <a href=\"" + url + pref + "pager.offset=" + (offset + size) + pref1 + param + "\">" + prop.getString("label.nextPage") + "</a>\n";
header = header + "</font>";
return header;
} else
{
return "";
}
}
public static String generateSubmit(int offset, int length, int size, String url, String param, String formName)
{
String pref1 = "&";
String pref;
if(url.indexOf("?") > -1)
pref = "&";
else
pref = "?";
int pageNum = 0;
int pageNo = offset / size + 1;
if(length % size == 0)
pageNum = length / size;
else
pageNum = length / size + 1;
StringBuffer header = new StringBuffer();
header.append(HEADER + ": ");
header.append(prop.getString("taw.total") + " ");
header.append(String.valueOf(pageNum) + " "+prop.getString("taw.page"));
header.append(String.valueOf(length) + " ");
header.append(prop.getString("taw.piece") + " ");
header.append(prop.getString("taw.pageDescription") + " ");
header.append("<select name=\"page\" onchange=\"goPage();\">");
for(int i = 1; i <= pageNum; i++)
{
header.append("<option value='" + (i - 1) * size + "'");
if(pageNo == i)
header.append(" selected");
header.append(">" + i + "</option>");
}
header.append("</select>" + prop.getString("taw.page") + " ");
int radius = (MAX_PAGE_INDEX / 2) * size;
int start;
if(offset < radius)
start = 0;
else
if(offset < length - radius)
start = offset - radius;
else
start = (length / size - MAX_PAGE_INDEX) * size;
header.append("\n");
header.append("<script language=\"javascript\">\n");
header.append("<!--\n");
header.append("function goPage()\n");
header.append("{");
header.append("document." + formName + ".action=\"" + url + pref + param + pref1 + "pager.offset=\"" + " + document.all.page.value;\n");
header.append("document." + formName + ".submit();\n");
header.append("}\n");
header.append("-->\n");
header.append("</script>");
return header.toString();
}
public static void main(String[] arg){
PagerUtil.generate(11,11,22,"dd.do");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -