クラス SynchronizedItemStreamReader<T>

java.lang.ObjectSE
org.springframework.batch.item.support.SynchronizedItemStreamReader<T>
型パラメーター:
T - 読み込まれるオブジェクトの型
実装済みのインターフェース一覧:
ItemReader<T>ItemStreamItemStreamReader<T>org.springframework.beans.factory.InitializingBean

public class SynchronizedItemStreamReader<T> extends ObjectSE implements ItemStreamReader<T>, org.springframework.beans.factory.InitializingBean
これは、同期された ItemReader.read() メソッドを備えた単純な ItemStreamReader デコレータです。これにより、スレッドセーフではない ItemReader がスレッドセーフになります。ただし、アイテムの再処理に問題がある場合は、これを使用するとジョブを再開できなくなります。このクラスの背景となる動機に関するいくつかのリンクは次のとおりです。-/projects/spring-batch/faq.html#threading-reader}-https://stackoverflow.com/a/20002493/2910265}
導入:
3.0.4
作成者:
Matthew Ouyang
  • コンストラクターの詳細

    • SynchronizedItemStreamReader

      public SynchronizedItemStreamReader()
  • 方法の詳細

    • setDelegate

      public void setDelegate(ItemStreamReader<T> delegate)
    • read

      これは、delegate の読み取りメソッドに委譲します
      次で指定:
      インターフェース ItemReader<T> 内の read 
      戻り値:
      T 処理するアイテム、またはデータソースが使い果たされた場合は null 
      例外:
      ParseException - 現在のレコードの解析に問題がある場合 (しかし、次のものはまだ有効かもしれません)
      NonTransientResourceException - 基礎となるリソースに致命的な例外がある場合。この例外をスローした後、実装は後続の read 呼び出しから null を返すように努める必要があります。
      UnexpectedInputException - 入力データに未分類の問題がある場合。潜在的に一時的であると想定します。後続の読み取り呼び出しは成功する可能性があります。
      ExceptionSE - 特定のエラーがない場合。
    • close

      public void close()
      インターフェースからコピーされた説明: ItemStream
      ストリームの動作にリソースが必要な場合、ここで破棄する必要があります。このメソッドが呼び出されると、他のすべてのメソッド(open を除く)は例外をスローする場合があります。
      次で指定:
      インターフェース ItemStream 内の close 
    • open

      public void open(ExecutionContext executionContext)
      インターフェースからコピーされた説明: ItemStream
      提供された ExecutionContext のストリームを開きます。
      次で指定:
      インターフェース ItemStream 内の open 
      パラメーター:
      executionContext - 現在のステップの ExecutionContext。再起動時のステップの最後の実行からの executionContext になります。
    • update

      public void update(ExecutionContext executionContext)
      インターフェースからコピーされた説明: ItemStream
      オープン中に提供された実行コンテキストが保存されようとしていることを示します。状態が残っているが、コンテキストに入れられていない場合は、ここに追加する必要があります。
      次で指定:
      インターフェース ItemStream 内の update 
      パラメーター:
      executionContext - 更新される
    • afterPropertiesSet

      public void afterPropertiesSet() throws ExceptionSE
      次で指定:
      インターフェース org.springframework.beans.factory.InitializingBean 内の afterPropertiesSet 
      例外:
      ExceptionSE