クラス SynchronizedItemStreamWriter<T>

java.lang.ObjectSE
org.springframework.batch.item.support.SynchronizedItemStreamWriter<T>
型パラメーター:
T - 書き込まれているオブジェクトの型
実装されたすべてのインターフェース:
ItemStreamItemStreamWriter<T>ItemWriter<T>org.springframework.beans.factory.InitializingBean

public class SynchronizedItemStreamWriter<T> extends ObjectSE implements ItemStreamWriter<T>, org.springframework.beans.factory.InitializingBean
同期化された write() メソッドを使用した ItemStreamWriter デコレータ。

このデコレータは、マルチスレッドステップで非スレッドセーフな項目ライターを使用する場合に便利です。典型的なデリゲートの例は、JsonFileItemWriter および StaxEventItemWriter です。

書き込みを同期するとパフォーマンスが低下する可能性があるため、このデコレータは必要な場合にのみ賢明に使用する必要があることに注意してください。例: マルチスレッドステップで FlatFileItemWriter を使用する場合、書き込みを同期する必要がないため、このようなユースケースでこのデコレータを使用すると逆効果になる可能性があります。

作成者:
Dimitrios Liapis, Mahmoud Ben Hassine
  • コンストラクターの詳細

    • SynchronizedItemStreamWriter

      public SynchronizedItemStreamWriter()
  • メソッドの詳細

    • setDelegate

      public void setDelegate(ItemStreamWriter<T> delegate)
      デリゲート ItemStreamWriter を設定します。
      パラメーター:
      delegate - 設定するデリゲート
    • write

      public void write(Chunk<? extends T> items) throws ExceptionSE
      このメソッドは、delegate の write メソッドに委譲します。
      次で指定:
      インターフェース ItemWriter<T>write 
      パラメーター:
      items - 書きこまれる項目。null であってはなりません。
      例外:
      ExceptionSE - エラーがある場合。フレームワークは例外をキャッチし、必要に応じて変換または再スローします。
    • open

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

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

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

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