クラス PagedListHolder<E>

java.lang.ObjectSE
org.springframework.beans.support.PagedListHolder<E>
型パラメーター:
E - 要素型
実装されたすべてのインターフェース:
SerializableSE

public class PagedListHolder<E> extends ObjectSE implements SerializableSE
PagedListHolder は、オブジェクトのリストを処理してページに分割するための単純な状態ホルダーです。ページ番号は 0 から始まります。

これは主に Web UI での使用を対象としています。通常、インスタンスは Bean のリストでインスタンス化され、セッションに入れられ、モデルとしてエクスポートされます。プロパティはすべてプログラムで設定 / 取得できますが、最も一般的な方法は、データバインディング、つまりリクエストパラメーターから Bean に入力することです。getter は主にビューで使用されます。

プロパティ "sort" として利用可能な SortDefinition 実装を介して、基になるリストの並べ替えをサポートします。デフォルトでは、MutableSortDefinition インスタンスが使用され、同じプロパティを再度設定すると昇順の値が切り替わります。

BeanWrapper で期待されるように、データバインディング名は "pageSize" および "sort.ascending" と呼ばれる必要があります。名前とネスト構文は、"myModelAttr.pageSize" や "myModelAttr.sort.ascending" などのそれぞれの JSTLEL 式と一致することに注意してください。

導入:
19.05.2003
作成者:
Juergen Hoeller
関連事項:
  • フィールドサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    static final int
    ページリンクのデフォルトの最大数。
    static final int
    デフォルトのページサイズ。
  • コンストラクターのサマリー

    コンストラクター
    コンストラクター
    説明
    新しいホルダーインスタンスを作成します。
    デフォルトのソート定義( "toggleAscendingOnProperty" がアクティブ化されている)から開始して、指定されたソースリストで新しいホルダーインスタンスを作成します。
    指定されたソースリストで新しいホルダーインスタンスを作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    protected SortDefinition
    変更されたソート定義と比較するための状態ホルダーとして使用するために、指定されたソート定義のディープコピーを作成します。
    protected void
    doSort(ListSE<E> source, SortDefinition sort)
    指定されたソート定義に従って、実際に指定されたソースリストのソートを実行します。
    int
    現在のページの最初の要素の要素インデックスを返します。
    int
    現在のページの周囲にリンクを作成する最初のページを返します。
    int
    現在のページの最後の要素の要素インデックスを返します。
    int
    現在のページの周囲にリンクを作成する最後のページを返します。
    int
    現在のページの周辺の数ページへのページリンクの最大数を返します。
    int
    ソースリストの要素の総数を返します。
    int
    現在のページ番号を返します。
    int
    現在のソースリストのページ数を返します。
    現在のページを表すサブリストを返します。
    int
    現在のページサイズを返します。
    ソースプロバイダーからリストが最後にフェッチされた時間を返します。
    このホルダーのソート定義を返します。
    このホルダーのソースリストを返します。
    boolean
    現在のページが最初のページである場合に戻ります。
    boolean
    現在のページが最後のページである場合に返します。
    void
    次のページに切り替えます。
    void
    前のページに切り替えます。
    void
    必要に応じてリストを並べ替えます。
    void
    setMaxLinkedPages(int maxLinkedPages)
    ページリンクの最大数を現在のページの数ページに設定します。
    void
    setPage(int page)
    現在のページ番号を設定します。
    void
    setPageSize(int pageSize)
    現在のページサイズを設定します。
    void
    このホルダーのソート定義を設定します。
    void
    setSource(ListSE<E> source)
    このホルダーのソースリストを設定します。

    クラス java.lang.ObjectSE から継承されたメソッド

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
  • フィールドの詳細

    • DEFAULT_PAGE_SIZE

      public static final int DEFAULT_PAGE_SIZE
      デフォルトのページサイズ。
      関連事項:
    • DEFAULT_MAX_LINKED_PAGES

      public static final int DEFAULT_MAX_LINKED_PAGES
      ページリンクのデフォルトの最大数。
      関連事項:
  • コンストラクターの詳細

    • PagedListHolder

      public PagedListHolder()
      新しいホルダーインスタンスを作成します。ホルダーを使用できるようにするには、ソースリストを設定する必要があります。
      関連事項:
    • PagedListHolder

      public PagedListHolder(ListSE<E> source)
      デフォルトのソート定義( "toggleAscendingOnProperty" がアクティブ化されている)から開始して、指定されたソースリストで新しいホルダーインスタンスを作成します。
      パラメーター:
      source - ソースリスト
      関連事項:
    • PagedListHolder

      public PagedListHolder(ListSE<E> source, SortDefinition sort)
      指定されたソースリストで新しいホルダーインスタンスを作成します。
      パラメーター:
      source - ソースリスト
      sort - まずは SortDefinition
  • メソッドの詳細

    • setSource

      public void setSource(ListSE<E> source)
      このホルダーのソースリストを設定します。
    • getSource

      public ListSE<E> getSource()
      このホルダーのソースリストを返します。
    • getRefreshDate

      @Nullable public DateSE getRefreshDate()
      ソースプロバイダーからリストが最後にフェッチされた時間を返します。
    • setSort

      public void setSort(@Nullable SortDefinition sort)
      このホルダーのソート定義を設定します。通常は MutableSortDefinition のインスタンスです。
      関連事項:
    • getSort

      @Nullable public SortDefinition getSort()
      このホルダーのソート定義を返します。
    • setPageSize

      public void setPageSize(int pageSize)
      現在のページサイズを設定します。変更された場合、現在のページ番号をリセットします。

      デフォルト値は 10 です。

    • getPageSize

      public int getPageSize()
      現在のページサイズを返します。
    • setPage

      public void setPage(int page)
      現在のページ番号を設定します。ページ番号は 0 から始まります。
    • getPage

      public int getPage()
      現在のページ番号を返します。ページ番号は 0 から始まります。
    • setMaxLinkedPages

      public void setMaxLinkedPages(int maxLinkedPages)
      ページリンクの最大数を現在のページの数ページに設定します。
    • getMaxLinkedPages

      public int getMaxLinkedPages()
      現在のページの周辺の数ページへのページリンクの最大数を返します。
    • getPageCount

      public int getPageCount()
      現在のソースリストのページ数を返します。
    • isFirstPage

      public boolean isFirstPage()
      現在のページが最初のページである場合に戻ります。
    • isLastPage

      public boolean isLastPage()
      現在のページが最後のページである場合に返します。
    • previousPage

      public void previousPage()
      前のページに切り替えます。すでに最初のページにある場合は、最初のページに留まります。
    • nextPage

      public void nextPage()
      次のページに切り替えます。すでに最後のページにある場合、最後のページにとどまります。
    • getNrOfElements

      public int getNrOfElements()
      ソースリストの要素の総数を返します。
    • getFirstElementOnPage

      public int getFirstElementOnPage()
      現在のページの最初の要素の要素インデックスを返します。要素の番号付けは 0 から始まります。
    • getLastElementOnPage

      public int getLastElementOnPage()
      現在のページの最後の要素の要素インデックスを返します。要素の番号付けは 0 から始まります。
    • getPageList

      public ListSE<E> getPageList()
      現在のページを表すサブリストを返します。
    • getFirstLinkedPage

      public int getFirstLinkedPage()
      現在のページの周囲にリンクを作成する最初のページを返します。
    • getLastLinkedPage

      public int getLastLinkedPage()
      現在のページの周囲にリンクを作成する最後のページを返します。
    • resort

      public void resort()
      必要に応じて、つまり現在の sort インスタンスがバックアップされた sortUsed インスタンスと等しくない場合は、リストを並べ替えます。

      doSort を呼び出して、実際のソートをトリガーします。

      関連事項:
    • copySortDefinition

      protected SortDefinition copySortDefinition(SortDefinition sort)
      変更されたソート定義と比較するための状態ホルダーとして使用するために、指定されたソート定義のディープコピーを作成します。

      デフォルトの実装では、MutableSortDefinition インスタンスを作成します。特に SortDefinition インターフェースのカスタム拡張の場合、サブクラスでオーバーライドできます。null を返すことができます。つまり、ソート状態は保持されず、各 resort 呼び出しの実際のソートがトリガーされます。

      パラメーター:
      sort - 現在の SortDefinition オブジェクト
      戻り値:
      SortDefinition オブジェクトのディープコピー
      関連事項:
    • doSort

      protected void doSort(ListSE<E> source, SortDefinition sort)
      指定されたソート定義に従って、実際に指定されたソースリストのソートを実行します。

      デフォルトの実装では、Spring の PropertyComparator を使用します。サブクラスでオーバーライドできます。

      関連事項: