⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pagerutil.java

📁 软件工程资料
💻 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") + "&nbsp;&nbsp;");
        if(offset > 0)
            header.append("&nbsp;<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("&nbsp;<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") + "&nbsp;");
        header.append(String.valueOf(pageNum) + "&nbsp;"+prop.getString("taw.page"));
        header.append(String.valueOf(length) + "&nbsp;");
        header.append(prop.getString("taw.piece") + "&nbsp;"); 
        header.append(prop.getString("taw.pageDescription") + "&nbsp;");
        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") + "&nbsp;&nbsp;");
        if(offset > 0)
            header.append("&nbsp;<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("&nbsp;<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 + "&nbsp;<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 + "&nbsp;<a href=\"" + url + pref + "pager.offset=" + i + "\">" + (i / size + 1) + "</a>\n";
            }

            if(offset < length - size)
                header = header + "&nbsp;<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 + "&nbsp;<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 + "&nbsp;<a href=\"" + url + pref + "pager.offset=" + i + pref1 + param + "\">" + (i / size + 1) + "</a>\n";
            }

            if(offset < length - size)
                header = header + "&nbsp;<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") + "&nbsp;");
        header.append(String.valueOf(pageNum) + "&nbsp;"+prop.getString("taw.page"));
        header.append(String.valueOf(length) + "&nbsp;");
        header.append(prop.getString("taw.piece") + "&nbsp;"); 
        header.append(prop.getString("taw.pageDescription") + "&nbsp;");
        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") + "&nbsp;&nbsp;");
        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 + -