クラス MongoItemReader<T>

実装済みのインターフェース一覧:
ItemReader<T>ItemStreamItemStreamReader<T>org.springframework.beans.factory.InitializingBean

public class MongoItemReader<T> extends AbstractPaginatedDataItemReader<T> implements org.springframework.beans.factory.InitializingBean

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

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

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

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

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

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

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

    • MongoItemReader

      public MongoItemReader()
  • 方法の詳細

    • setQuery

      public void setQuery(org.springframework.data.mongodb.core.query.Query query)
      使用する Mongo クエリ。
      パラメーター:
      query - 使用する Mongo クエリ。
    • setTemplate

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

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

      public void setTargetType(ClassSE<? extends T> type)
      AbstractItemCountingItemStreamItemReader.read() 呼び出しで返されるオブジェクトの型。
      パラメーター:
      type - 返すオブジェクトの型
    • setParameterValues

      public void setParameterValues(ListSE<ObjectSE> parameterValues)
      クエリの各パラメーターに代入される ListSE の値。
      パラメーター:
      parameterValues - 個の値
    • setFields

      public void setFields(StringSE fields)
      MongoDB によって一致するドキュメントから返されるフィールドを定義する JSON。
      パラメーター:
      fields - ソートするフィールドを識別する JSON 文字列。
    • setSort

      public void setSort(MapSE<StringSE,org.springframework.data.domain.Sort.Direction> sorts)
      入力を並べ替えるプロパティ名 /Sort.Direction 値の MapSE
      パラメーター:
      sorts - プロパティのマップとそれぞれを並べ替える方向。
    • setCollection

      public void setCollection(StringSE collection)
      パラメーター:
      collection - 照会する Mongo コレクション。
    • setHint

      public void setHint(StringSE hint)
      使用するインデックスを MongoDB に指示する JSON 文字列。
      パラメーター:
      hint - 使用するインデックスを示す文字列。
    • doPageRead

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

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

      public void afterPropertiesSet() throws ExceptionSE
      必須プロパティをチェックします
      次で指定:
      インターフェース org.springframework.beans.factory.InitializingBean 内の afterPropertiesSet 
      例外:
      ExceptionSE
      関連事項:
      • InitializingBean.afterPropertiesSet()