pagecontroltag.java

来自「基于struts框架编写的在线考试系统」· Java 代码 · 共 132 行

JAVA
132
字号
package examonline.taglibs;

import java.io.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;

import examonline.struts.*;



public class PageControlTag extends TagSupport
{
  private String href;
  private String pbname;
  private String preShowValue = "previous";
  private String nextShowValue = "next";
  private String lastShowValue = "last";
  public PageControlTag()
  {

  }

  /**
   * doEndTag
   *
   * @return int
   * @throws JspException
   * @todo Implement this javax.servlet.jsp.tagext.Tag method
   */
  public int doEndTag() throws JspException
  {
    HttpServletRequest request = (HttpServletRequest) pageContext.getRequest();

    HttpSession session = pageContext.getSession();
    JspWriter out = pageContext.getOut();
    PageBean pb = (PageBean) session.getAttribute(pbname);
    if (pb == null)
      return 0;
    int maxpage = pb.getMaxPage();
    int prepage = pb.getPrePage();
    int nextpage = pb.getNextPage();
    if (href != null)
    {
      if (href.indexOf("?") != -1)
        href = href + "&";
      else
        href = href + "?";
    }
    try
    {
      if (prepage > 0)
        out.write("<a href=\"" + href + "?page=" + prepage + "\">" +
                  preShowValue + "</a>");
      else
        out.write(preShowValue + " ");
      if (nextpage <= maxpage)
      {
        out.write("<a href=\"" + href + "page=" + nextpage + "\"> " +
                  nextShowValue + "</a>");
        out.write("<a href=\"" + href + "page=" + maxpage + "\"> " +
                  lastShowValue + " </a>");
      }
      else
      {
        out.write(" " + nextShowValue + " " + lastShowValue);
      }

    }
    catch (IOException ex)
    {
    }
    return this.EVAL_PAGE;
  }

  public String getHref()
  {
    return href;
  }

  public String getPbname()
  {
    return pbname;
  }

  public String getPreShowValue()
  {

    return preShowValue;
  }

  public String getNextShowValue()
  {

    return nextShowValue;
  }

  public String getLastShowValue()
  {

    return lastShowValue;
  }

  public void setHref(String href)
  {
    this.href = href;
  }

  public void setPbname(String pbname)
  {
    this.pbname = pbname;
  }

  public void setPreShowValue(String preShowValue)
  {

    this.preShowValue = preShowValue;
  }

  public void setNextShowValue(String nextShowValue)
  {

    this.nextShowValue = nextShowValue;
  }

  public void setLastShowValue(String lastShowValue)
  {

    this.lastShowValue = lastShowValue;
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?