jsp分页控件

阅读更多

1.PagingTag.java

 

package com.cn.cosoft.util.taglibs;

import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;

/** */
/**
 * 自定义的分页标签
 *
 * @author 马万林
 *
 */
public class PagingTag extends TagSupport {

    private String url = null;
    private int pageIndex;
    private int pageMax;

    public void setUrl(String url) {
        this.url = url;
    }

    public String getUrl() {
        return this.url;
    }

    public void setPageIndex(int pageIndex) {
        this.pageIndex = pageIndex;
    }

    public int getPageIndex() {
        return this.pageIndex;
    }

    public void setPageMax(int pageMax) {
        this.pageMax = pageMax;
    }

    public int getPageMax() {
        return this.pageMax;
    }


    @Override
    public int doStartTag() throws JspException {
        String str = "";
        if (pageIndex == 1) {
            str += "首页 上一页 ";
        } else {
            str += " 首页 "
                    + "上一页 ";
        }
        if (pageIndex / 6 < 1.0 || pageMax < 10) {
            for (int i = 1; i <= 9; i++) {
                if (i <= pageMax) {
                    if (pageIndex != i) {
                        str += "[" + i + "] ";
                    } else {
                        str += "  " + i + " ";
                    }
                }
            }
        } else if (pageIndex / 6 >= 1.0 && pageMax >= 10) {
            int fri = 0;
            int max = 0;
            if (pageMax - pageIndex > 4) {
                fri = pageIndex - 4;
                max = pageIndex + 4;
            } else {
                fri = pageMax - 8;
                max = pageMax;
            }
            for (int i = fri; i <= max; i++) {
                if (i <= pageMax) {
                    if (pageIndex != i) {
                        str += "[" + i + "] ";
                    } else {
                        str += "  " + i + " ";
                    }
                }
            }
        }
        if (pageIndex == pageMax || pageMax < 2) {
            str += "下一页 尾页";
        } else {
            str += "下一页 "
                    + "尾页";
        }
        try {
            if (str != "") {
                pageContext.getOut().write(str);
            }
        } catch (Exception e) {
            throw new JspException(e);
        }
        return EVAL_PAGE;
    }
}

 2.pagingTag.tld

 


 

    1.0
    1.2
    pagingTag
    
    
        pageOut
        com.cn.cosoft.util.taglibs.PagingTag
        empty
        
            url
            true
            true
        
        
            pageIndex
            true
            true
        
        
            pageMax
            true
            true
        
    

 3.index.jsp

 

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="/WEB-INF/pagingTag.tld" prefix="pt"%>


    

  



你可能感兴趣的:(分页,控件)