クラス TransactionAwareBufferedWriter
java.lang.ObjectSE
java.io.WriterSE
org.springframework.batch.support.transaction.TransactionAwareBufferedWriter
- 実装済みのインターフェース一覧:
CloseableSE、FlushableSE、AppendableSE、AutoCloseableSE
トランザクションがアクティブな場合に実際の書き込みまたはバッファのクローズを遅らせる
FileChannelSE のラッパー。Writer.write(String)SE への呼び出しでトランザクションが検出された場合、パラメーターはバッファーに入れられ、トランザクションがコミットされた場合にのみ、基礎となるライターに渡されます。- 作成者:
- Dave Syer, Michael Minella, Niels Ferguson, Mahmoud Ben Hassine
フィールド概要
コンストラクター概要
コンストラクターコンストラクター説明TransactionAwareBufferedWriter(FileChannelSE channel, RunnableSE closeCallback) 基になるファイルチャネルが提供された新しいインスタンスを作成し、閉じるときに実行するコールバックを作成します。方法の概要
修飾子と型メソッド説明voidclose()voidflush()longフラッシュされていないデータがあるかどうかをクライアントが判断するための便利なメソッド。voidsetEncoding(StringSE encoding) voidsetForceSync(boolean forceSync) フラッシュ時に変更を強制的にディスクに同期する必要があることを示すフラグ。voidwrite(char[] cbuf, int off, int len) void
コンストラクターの詳細
TransactionAwareBufferedWriter
基になるファイルチャネルが提供された新しいインスタンスを作成し、閉じるときに実行するコールバックを作成します。コールバックは、出力ストリームやチャネルなどの関連リソースをクリーンアップする必要があります。- パラメーター:
channel- 実際のファイル IO を実行するために使用されるチャネルcloseCallback- クローズ時に実行するコールバック
方法の詳細
setEncoding
setForceSync
public void setForceSync(boolean forceSync) フラッシュ時に変更を強制的にディスクに同期する必要があることを示すフラグ。デフォルトは false です。これは、書き込みとキャッシュフラッシュの間に OS がクラッシュすると、ローカルディスクの変更が失われる可能性があることを意味します。true に設定すると、多くの頻繁な書き込みを伴う使用パターンのパフォーマンスが低下する場合があります。- パラメーター:
forceSync- 設定するフラグ値
getBufferSize
public long getBufferSize()フラッシュされていないデータがあるかどうかをクライアントが判断するための便利なメソッド。- 戻り値:
- フラッシュされていないバッファリングされたデータの現在のサイズ(バイト単位)
close
- 次で指定:
- インターフェース
AutoCloseableSE内のclose - 次で指定:
- インターフェース
CloseableSE内のclose - 次で指定:
- クラス
WriterSEのclose - 例外:
IOExceptionSE
flush
- 次で指定:
- インターフェース
FlushableSE内のflush - 次で指定:
- クラス
WriterSEのflush - 例外:
IOExceptionSE
write
- 次で指定:
- クラス
WriterSEのwriteSE - 例外:
IOExceptionSE
write
- オーバーライド:
- クラス
WriterSEのwriteSE - 例外:
IOExceptionSE