クラス MongoPagingItemReader<T>

型パラメーター:
T - 読むアイテムの種類
実装されているすべてのインターフェース:
ItemReader<T>ItemStreamItemStreamReader<T>org.springframework.beans.factory.InitializingBean

public class MongoPagingItemReader<T> extends MongoItemReader<T>

ページング手法を使用して MongoDB からドキュメントを読み取る再起動可能な ItemReader

JSON 文字列クエリ setQuery(String) を設定すると、リクエストされたドキュメントを取得するために JSON が実行されます。

Query オブジェクト setQuery(Query) を設定すると、リクエストされたドキュメントを取得するために Query が実行されます。

クエリは、AbstractPaginatedDataItemReader.setPageSize(int) で指定されたページリクエストを使用して実行されます。AbstractItemCountingItemStreamItemReader.read() メソッドが呼び出されると、データを提供するために必要に応じて追加のページがリクエストされます。

提供される JSON 文字列クエリは、?<index> プレースホルダーを介したパラメーター置換をサポートします。<index> は、置換する parameterValue のインデックスを示します。

実装は AbstractItemCountingItemStreamItemReader.open(ExecutionContext) の呼び出し間でスレッドセーフですが、マルチスレッドクライアントで使用する場合は saveState=false を使用することを忘れないでください(再起動は利用できません)。

導入:
5.1
作成者:
Michael Minella, Takaaki Iida, Mahmoud Ben Hassine, Parikshit Dutta
  • コンストラクターの詳細

    • MongoPagingItemReader

      public MongoPagingItemReader()
      新しい MongoPagingItemReader を作成します。
  • メソッドの詳細

    • setTemplate

      public void setTemplate(org.springframework.data.mongodb.core.MongoOperations template)
      クラスからコピーされた説明: MongoItemReader
      MongoDB インスタンスに対して操作を実行するために使用されます。ドキュメントのオブジェクトへのマッピングも処理します。
      オーバーライド:
      クラス MongoItemReader<T>setTemplate 
      パラメーター:
      template - 使用する MongoOperations インスタンス
      関連事項:
      • MongoOperations
    • setQuery

      public void setQuery(org.springframework.data.mongodb.core.query.Query query)
      クラスからコピーされた説明: MongoItemReader
      使用する Mongo クエリ。
      オーバーライド:
      クラス MongoItemReader<T>setQuery 
      パラメーター:
      query - 使用する Mongo クエリ。
    • setQuery

      public void setQuery(StringSE queryString)
      クラスからコピーされた説明: MongoItemReader
      JSON 形式の MongoDB クエリ。提供されたクエリのパラメーター化は、?<index> プレースホルダーを介して許可されます。<index> は、置換する parameterValue のインデックスを示します。
      オーバーライド:
      クラス MongoItemReader<T>setQuery 
      パラメーター:
      queryString - JSON 形式の Mongo クエリ
    • setTargetType

      public void setTargetType(ClassSE<? extends T> type)
      クラスからコピーされた説明: MongoItemReader
      AbstractItemCountingItemStreamItemReader.read() 呼び出しで返されるオブジェクトの型。
      オーバーライド:
      クラス MongoItemReader<T>setTargetType 
      パラメーター:
      type - 返すオブジェクトの型
    • setParameterValues

      public void setParameterValues(ListSE<ObjectSE> parameterValues)
      クラスからコピーされた説明: MongoItemReader
      クエリの各パラメーターに代入される ListSE の値。
      オーバーライド:
      クラス MongoItemReader<T>setParameterValues 
      パラメーター:
      parameterValues - 個の値
    • setFields

      public void setFields(StringSE fields)
      クラスからコピーされた説明: MongoItemReader
      MongoDB によって一致するドキュメントから返されるフィールドを定義する JSON。
      オーバーライド:
      クラス MongoItemReader<T>setFields 
      パラメーター:
      fields - ソートするフィールドを識別する JSON 文字列。
    • setSort

      public void setSort(MapSE<StringSE,org.springframework.data.domain.Sort.Direction> sorts)
      クラスからコピーされた説明: MongoItemReader
      入力を並べ替えるプロパティ名 /Sort.Direction 値の MapSE
      オーバーライド:
      クラス MongoItemReader<T>setSort 
      パラメーター:
      sorts - プロパティのマップとそれぞれを並べ替える方向。
    • setCollection

      public void setCollection(StringSE collection)
      オーバーライド:
      クラス MongoItemReader<T>setCollection 
      パラメーター:
      collection - 照会する Mongo コレクション。
    • setHint

      public void setHint(StringSE hint)
      クラスからコピーされた説明: MongoItemReader
      使用するインデックスを MongoDB に指示する JSON 文字列。
      オーバーライド:
      クラス MongoItemReader<T>setHint 
      パラメーター:
      hint - 使用するインデックスを示す文字列。
    • afterPropertiesSet

      public void afterPropertiesSet() throws ExceptionSE
      クラスからコピーされた説明: MongoItemReader
      必須プロパティをチェックします
      次で指定:
      インターフェース org.springframework.beans.factory.InitializingBeanafterPropertiesSet 
      オーバーライド:
      クラス MongoItemReader<T>afterPropertiesSet 
      例外:
      ExceptionSE
      関連事項:
      • InitializingBean.afterPropertiesSet()
    • doPageRead

      protected IteratorSE<T> doPageRead()
      クラスからコピーされた説明: AbstractPaginatedDataItemReader
      この ItemStreamReader がページを読み取る実際の作業のために委譲するメソッド。このメソッドが呼び出されるたびに、結果の IteratorSE には、次のページ内で読み取られた項目が含まれている必要があります。

      返されたときに IteratorSE が空または null の場合、この ItemReader は入力が使い果たされたと想定します。
      オーバーライド:
      クラス MongoItemReader<T>doPageRead 
      戻り値:
      ページ内のアイテムを含む IteratorSE
    • replacePlaceholders

      protected StringSE replacePlaceholders(StringSE input, ListSE<ObjectSE> values)
      オーバーライド:
      クラス MongoItemReader<T>replacePlaceholders 
    • convertToSort

      protected org.springframework.data.domain.Sort convertToSort(MapSE<StringSE,org.springframework.data.domain.Sort.Direction> sorts)
      オーバーライド:
      クラス MongoItemReader<T>convertToSort