クラス SynchronizedItemStreamReader<T>
java.lang.ObjectSE
org.springframework.batch.item.support.SynchronizedItemStreamReader<T>
- 型パラメーター:
T- 読み込まれるオブジェクトの型
- 実装されているすべてのインターフェース:
ItemReader<T>、ItemStream、ItemStreamReader<T>、org.springframework.beans.factory.InitializingBean
public class SynchronizedItemStreamReader<T>
extends ObjectSE
implements ItemStreamReader<T>, org.springframework.beans.factory.InitializingBean
これは、同期された ItemReader.read() メソッドを使用した単純な ItemStreamReader デコレータです。これにより、非スレッドセーフの ItemReader がスレッドセーフになります。
ただし、アイテムの再処理に問題がある場合、これを使用するとジョブを再開できなくなります。
このクラスの背景となる動機は次のとおりです: https://stackoverflow.com/a/20002493/2910265
- 導入:
- 3.0.4
- 作成者:
- Matthew Ouyang, Mahmoud Ben Hassine
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明voidvoidclose()ストリームの動作にリソースが必要な場合、ここで破棄する必要があります。voidopen(ExecutionContext executionContext) 提供されたExecutionContextのストリームを開きます。read()これは、delegateの読み取りメソッドに委譲しますvoidsetDelegate(ItemStreamReader<T> delegate) voidupdate(ExecutionContext executionContext) オープン中に提供された実行コンテキストが保存されようとしていることを示します。
コンストラクターの詳細
SynchronizedItemStreamReader
public SynchronizedItemStreamReader()
メソッドの詳細
setDelegate
read
これは、delegateの読み取りメソッドに委譲します- 次で指定:
- インターフェース
ItemReader<T>のread - 戻り値:
- T 処理するアイテム、またはデータソースが使い果たされた場合は
null - 例外:
ParseException- 現在のレコードの解析に問題がある場合 (しかし、次のものはまだ有効かもしれません)NonTransientResourceException- 基礎となるリソースに致命的な例外がある場合。この例外をスローした後、実装は後続の read 呼び出しから null を返すように努める必要があります。UnexpectedInputException- 入力データに未分類の問題がある場合。潜在的に一時的であると想定します。後続の読み取り呼び出しは成功する可能性があります。ExceptionSE- 特定のエラーがない場合。
close
public void close()インターフェースからコピーされた説明:ItemStreamストリームの動作にリソースが必要な場合、ここで破棄する必要があります。このメソッドが呼び出されると、他のすべてのメソッド(open を除く)は例外をスローする場合があります。- 次で指定:
- インターフェース
ItemStreamのclose
open
インターフェースからコピーされた説明:ItemStream提供されたExecutionContextのストリームを開きます。- 次で指定:
- インターフェース
ItemStreamのopen - パラメーター:
executionContext- 現在のステップのExecutionContext。再起動時のステップの最後の実行からの executionContext になります。
update
インターフェースからコピーされた説明:ItemStreamオープン中に提供された実行コンテキストが保存されようとしていることを示します。状態が残っているが、コンテキストに入れられていない場合は、ここに追加する必要があります。- 次で指定:
- インターフェース
ItemStreamのupdate - パラメーター:
executionContext- 更新される
afterPropertiesSet
- 次で指定:
- インターフェース
org.springframework.beans.factory.InitializingBeanのafterPropertiesSet - 例外:
ExceptionSE