Class Pagination<T extends Serializable>

java.lang.Object
org.nutz.dao.pager.Pager
tech.riemann.nif.nutz.dao.service.entity.Pagination<T>
Type Parameters:
T - 实体类型,表示分页中每条记录的数据类型
All Implemented Interfaces:
Serializable, org.nutz.lang.util.PageInfo

public class Pagination<T extends Serializable> extends org.nutz.dao.pager.Pager
分页结果封装类,用于承载分页查询的结果数据及分页参数信息

低级: 手写 equals/hashCode——原 @EqualsAndHashCode(callSuper=false, of={paras,dataList}) 排除父类 Pager 的页码/页大小/总数,分页参数不同的两个分页对象被判相等(数据判断错误); 现纳入 pageNumber/pageSize/recordCount + paras/dataList

Author:
Kerbores(kerbores@gmail.com)
See Also:
  • Field Summary

    Fields inherited from class org.nutz.dao.pager.Pager

    DEFAULT_PAGE_SIZE, MAX_FETCH_SIZE
  • Constructor Summary

    Constructors
    Constructor
    Description
    Pagination(int page, int pageSize)
    构造方法:根据指定页面和页面大小初始化分页对象
  • Method Summary

    Modifier and Type
    Method
    Description
    addParam(String key, Object value)
    添加参数到paras映射中,如果paras尚未初始化则先进行初始化
    dataList(List<T> dataList)
    设置当前分页的数据列表
    boolean
    低级: 手写 equals——纳入页码/页大小/总数(父类 Pager 字段)+ paras/dataList, 分页参数不同的对象不再误判相等
    int
     
    static <T extends Serializable>
    Pagination<T>
    创建一个默认的分页实例
    static <T extends Serializable>
    Pagination<T>
    instance(int page, int pageSize)
    根据给定的页码和页面大小创建一个新的分页实例
    static <T extends Serializable>
    Pagination<T>
    instance(List<T> dataList)
    使用提供的数据列表创建一个新的分页实例,并将该列表赋值给dataList字段
    page(int page)
    设置当前页码
    recordCount(int recordCount)
    设置总记录数
    size(int size)
    设置每页显示的记录数量

    Methods inherited from class org.nutz.dao.pager.Pager

    getOffset, getPageCount, getPageNumber, getPageSize, getRecordCount, hasNext, hasPrevious, isFirst, isLast, resetPageCount, setPageNumber, setPageSize, setRecordCount, toString

    Methods inherited from class Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • Pagination

      public Pagination(int page, int pageSize)
      构造方法:根据指定页面和页面大小初始化分页对象
      Parameters:
      page - 页面编号(从1开始)
      pageSize - 每页显示的记录数
  • Method Details

    • instance

      public static <T extends Serializable> Pagination<T> instance()
      创建一个默认的分页实例
      Type Parameters:
      T - 泛型类型,代表实体数据类型
      Returns:
      新建的Pagination实例
    • instance

      public static <T extends Serializable> Pagination<T> instance(int page, int pageSize)
      根据给定的页码和页面大小创建一个新的分页实例
      Type Parameters:
      T - 泛型类型,代表实体数据类型
      Parameters:
      page - 页面编号(从1开始)
      pageSize - 每页显示的记录数
      Returns:
      新建并设置好页码与页面大小的Pagination实例
    • instance

      public static <T extends Serializable> Pagination<T> instance(List<T> dataList)
      使用提供的数据列表创建一个新的分页实例,并将该列表赋值给dataList字段
      Type Parameters:
      T - 泛型类型,代表实体数据类型
      Parameters:
      dataList - 要填充到分页中的数据列表
      Returns:
      带有预设数据列表的新Pagination实例
    • dataList

      public Pagination<T> dataList(List<T> dataList)
      设置当前分页的数据列表
      Parameters:
      dataList - 数据列表
      Returns:
      返回当前Pagination实例以支持链式调用
    • page

      public Pagination<T> page(int page)
      设置当前页码
      Parameters:
      page - 页码(从1开始)
      Returns:
      返回当前Pagination实例以支持链式调用
    • size

      public Pagination<T> size(int size)
      设置每页显示的记录数量
      Parameters:
      size - 每页记录数
      Returns:
      返回当前Pagination实例以支持链式调用
    • recordCount

      public Pagination<T> recordCount(int recordCount)
      设置总记录数
      Parameters:
      recordCount - 总记录数
      Returns:
      返回当前Pagination实例以支持链式调用
    • addParam

      public Pagination<T> addParam(String key, Object value)
      添加参数到paras映射中,如果paras尚未初始化则先进行初始化
      Parameters:
      key - 参数键名
      value - 参数值
      Returns:
      返回当前Pagination实例以支持链式调用
    • equals

      public boolean equals(Object o)
      低级: 手写 equals——纳入页码/页大小/总数(父类 Pager 字段)+ paras/dataList, 分页参数不同的对象不再误判相等
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object