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

📄 resultheadertag.java

📁 招标投标网上系统
💻 JAVA
字号:
package cn.com.syntc.common.taglib;

import javax.servlet.jsp.tagext.TagSupport;
import javax.servlet.jsp.JspException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

import cn.com.syntc.common.io.Parameters;
import cn.com.syntc.common.type.ResultSet;

public class ResultHeaderTag extends TagSupport {
    public ResultSet resultset = null;

    private String resultName = "";

    private int counter = 0;  // 计数器

    private int currentPage = 1;//页面数从1开始
    private int countOfPage = 0;
    private int pagesCount = 0;
    private int totalCount = 0;

    public void setResultName(String resultName) {
        this.resultName = resultName ;
    }

    public void setCurrentPage(int currentPage) {
      this.currentPage = currentPage;
    }

    public void setCountOfPage(int countOfPage) {
      this.countOfPage = countOfPage;;
    }

    public ResultHeaderTag () {
      resultName = null;
    }

    public int doStartTag() {
      int returnType = SKIP_BODY;
      try {
        HttpSession session = pageContext.getSession();
        HttpServletResponse response = (HttpServletResponse)pageContext.getResponse();
        Parameters parameters = (Parameters)session.getAttribute("outparam");
 
        if(parameters != null)
        {
          String curPage = (String)parameters.getParameters("request", "currentPage");
          if(curPage==null || curPage.equals(""))
          {
            currentPage = 1;
          }
          else
          {
            currentPage = Integer.parseInt(curPage);
          }

          resultset = (ResultSet)parameters.getParameters("results", resultName);

          if(resultset != null){
            if(resultset.size()>0)
            {
              resultset.rewind();

              for(int i=0; i<(currentPage - 1)*countOfPage+1; i++)
              {
                resultset.next();  // 第一条记录或者该页的第一条记录
              }
              counter = 1;

              returnType = EVAL_BODY_INCLUDE;
            }
          }
        }
      }
      catch(Exception e) {
        System.out.println("error=:"+e.getMessage());
      }
      return  returnType;
    }

    public int doAfterBody () {
      int returnType = SKIP_BODY;
      try {
        if(!resultset.isLast() && counter<countOfPage)
        {
          resultset.next(); // 下一条记录
          counter += 1;
          returnType = EVAL_BODY_AGAIN;//还有未输出,重新对其body content计值
        }
        else{
          returnType = SKIP_BODY;// 输出完毕则继续往下执行
        }
      } catch (Exception e) {
        System.out.println("error1:"+e.getMessage());
      }
      return  returnType;
    }

    public int doEndTag () {
      try {
        resultset = null;
      } catch (Exception e) {
        System.out.println("error2:"+e.getMessage());
      }
      return  EVAL_PAGE;
    }
}

⌨️ 快捷键说明

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