程序包 com.sh.javax

类 DataPages

java.lang.Object
com.sh.javax.DataPages
所有已实现的接口:
Pages_I

public class DataPages extends Object implements Pages_I
处理分页的分页管理器类。 等同于webpages,只是WebPages用于展现页面分页,而DataPages用于后台分多次查询,避免数据过多而造成的内存溢出
  • 构造器详细资料

    • DataPages

      public DataPages(DataCenter dc, String sql, List<String> colsTypeList, List<Object> objList)
    • DataPages

      public DataPages(DataCenter dc, String sql, String[] colsType, Object[] obj)
      构造函数 根据参数中是否传入总行数这个参数来决定计算总行数
      参数:
      dc - 数据中心
      sql - 查询语句
      colsType - 参数类型
      obj - 参数值
    • DataPages

      public DataPages(DataCenter dc, String sql, Object[] obj)
    • DataPages

      public DataPages(DataCenter dc, String sql)
      构造函数,和不带HttpServletRequest参数的情况相比,不必传入当前页就可以通过getPageData()获取当前页的数据 根据是否传入总行数决定计算总行数
      参数:
      dc - 数据中心
      sql - 查询语句
    • DataPages

      public DataPages(DataCenter dc, String sql, int totalRows)
      构造函数,需要传入总行数
      参数:
      dc - 数据中心
      sql - 查询语句
      totalRows - 数据集的总行数(外部传入)
  • 方法详细资料

    • init

      public void init()
      构造类的时候调用的初始化函数 函数首先判断url参数totalrows是否被传入,如果传入,则直接获取总行数; 否则调用calTotalRows()函数来计算
    • init

      public void init(boolean isSetTotalRows)
      构造类的时候调用的初始化函数
      参数:
      isSetTotalRows - boolean true直接设置数据集的总行数 false首先判断url参数totalrows是否被传入,如果传入,则直接获取总行数; 否则调用calTotalRows()函数来计算
    • setQueryObj

      public void setQueryObj(Object[] obj)
      指定者:
      setQueryObj 在接口中 Pages_I
    • useIncrementColQuery

      public DataPages useIncrementColQuery(boolean useIncrementCol, String incrementColName, Object incrementInitColValue)
      设置使用增量列来进行分页,注意,这种方式只能一页一页的取,不能直接取指定页
      参数:
      useIncrementCol - 使用增量分页标识
      incrementColName - 增量列
      incrementInitColValue - 初始增量值
      返回:
    • setCacheable

      public void setCacheable(boolean useCacheFlag)
      设置是否使用缓存技术
      参数:
      useCacheFlag - true:使用缓存 false:不使用缓存,每次都实时查询
    • setPageParamName

      public void setPageParamName(String pageParamName)
      设置传递页号参数的名字
      参数:
      pageParamName - String 传递页号参数的名字
    • calTotalRows

      public int calTotalRows()
      获取总页数
      返回:
      总行数
    • getTotalRows

      public int getTotalRows()
      获取查询返回的数据集行数
      指定者:
      getTotalRows 在接口中 Pages_I
      返回:
      int 数据集的行数
    • getPageRows

      public int getPageRows()
      获取每页的行数,默认时每页15行
      指定者:
      getPageRows 在接口中 Pages_I
      返回:
      每页的行数
    • getPageParamName

      public String getPageParamName()
      获取传递页号参数的名字
      返回:
      String 传递页号参数的名字
    • setPageRows

      public void setPageRows(int pageRows)
      设置每页的行数
      指定者:
      setPageRows 在接口中 Pages_I
      参数:
      pageRows - 每页的行数
    • calTotalPages

      public int calTotalPages()
      计算出数据集的总页数
      返回:
      int 数据集的总页数
    • getTotalPageNums

      public int getTotalPageNums()
      获取总的页数
      指定者:
      getTotalPageNums 在接口中 Pages_I
      返回:
      总页数
    • getPageData

      public Datastore getPageData()
      获取当前页数据
      指定者:
      getPageData 在接口中 Pages_I
      返回:
      页面请求传输过来的当前页的数据
    • getNextPageData

      public Datastore getNextPageData()
      指定者:
      getNextPageData 在接口中 Pages_I
    • setCurrentPage

      public void setCurrentPage(int curPageNo)
      设置当前页号
      指定者:
      setCurrentPage 在接口中 Pages_I
      参数:
      curPageNo -
    • getPageData

      public Datastore getPageData(int pageNo)
      获取某页的数据集
      指定者:
      getPageData 在接口中 Pages_I
      参数:
      pageNo - 页号,当页号小于1时,取第一页;页号大于最大页时取最大页 从1开始
      返回:
      数据集Datastore
    • setOrderBy

      public void setOrderBy(String sortCol, String sortType)
      设置排序列,针对SQLSERVER有效
      参数:
      sortCol - String
      sortType - String
    • removeOrderBy

      public void removeOrderBy()
      删除排序列
    • refreshIncrementColValue

      public void refreshIncrementColValue()
      刷新自增长值
    • getSql

      public String getSql()
    • setSql

      public void setSql(String sql)
    • getCurrentPageNo

      public int getCurrentPageNo()
      取得当前页的页号
      指定者:
      getCurrentPageNo 在接口中 Pages_I
      返回:
      当前页的页号
    • getCurIncrementColValue

      public Object getCurIncrementColValue()
    • calTotalRows

      public void calTotalRows(boolean calFlag)
      从接口复制的说明: Pages_I
      设置是否计算总行数
      指定者:
      calTotalRows 在接口中 Pages_I
      参数:
      calFlag - boolean
    • isCalTotalRows

      public boolean isCalTotalRows()
      从接口复制的说明: Pages_I
      是否计算总行数
      指定者:
      isCalTotalRows 在接口中 Pages_I
      返回:
      boolean
    • getLastRetrieve

      public Datastore getLastRetrieve()
      从接口复制的说明: Pages_I
      获取后一次执行数据集
      指定者:
      getLastRetrieve 在接口中 Pages_I
      返回:
      Datastore
    • forEachPage

      public void forEachPage(Consumer<? super Datastore> action)
      循环输出每页
      参数:
      action -
    • forEachRow

      public void forEachRow(Consumer<? super RowInfo> action)
      循环输出每条记录
      参数:
      action -
    • isForEachBreak

      public boolean isForEachBreak()
    • setForEachBreak

      public void setForEachBreak(boolean forEachBreak)
      设置foreach循环时是否退出
      参数:
      forEachBreak -
    • reset

      public void reset()
    • getNavigateCacheKey

      public String getNavigateCacheKey()
      从接口复制的说明: Pages_I
      如果没有计算总行数时,会缓存当前执行的SQL,在页面可以再次计算
      指定者:
      getNavigateCacheKey 在接口中 Pages_I
      返回:
      String
    • setTotalRows

      public void setTotalRows(int totalRows)
      设置总记录数
      指定者:
      setTotalRows 在接口中 Pages_I
      参数:
      totalRows - 行数
    • hasMoreData

      public boolean hasMoreData()
      从接口复制的说明: Pages_I
      是否还有更多数据
      指定者:
      hasMoreData 在接口中 Pages_I
      返回:
      boolean
    • isDebug

      public boolean isDebug()
    • setDebug

      public void setDebug(boolean debug)
    • main

      public static void main(String[] args)