クラス JdbcBatchItemWriter<T>
java.lang.ObjectSE
org.springframework.batch.item.database.JdbcBatchItemWriter<T>
- 実装されたすべてのインターフェース:
ItemWriter<T>
,org.springframework.beans.factory.InitializingBean
public class JdbcBatchItemWriter<T>
extends ObjectSE
implements ItemWriter<T>, org.springframework.beans.factory.InitializingBean
NamedParameterJdbcTemplate
のバッチ機能を使用して、提供されたすべてのアイテムに対してステートメントのバッチを実行する ItemWriter
。
ItemPreparedStatementSetter
または ItemSqlParameterSourceProvider
のいずれかに SQL クエリと特別なコールバックを提供する必要があります。名前付きパラメーターまたは従来の "?" のいずれかを使用できます。プレースホルダー。名前付きパラメーターサポートを使用する場合は、ItemSqlParameterSourceProvider
を指定する必要があります。そうでない場合は、ItemPreparedStatementSetter
を指定する必要があります。このコールバックは、SQL ステートメントの実行に必要なパラメーターにアイテムをマッピングするロールを果たします。write(Chunk)
はトランザクション内で呼び出されることが予想されます。ライターは、プロパティが設定された後(通常のシングルトン動作)スレッドセーフであるため、複数の同時トランザクションでの書き込みに使用できます。
- 導入:
- 2.0
- 作成者:
- Dave Syer, Thomas Risberg, Michael Minella, Mahmoud Ben Hassine
フィールドサマリー
修飾子と型フィールド説明protected boolean
protected ItemPreparedStatementSetter<T>
protected ItemSqlParameterSourceProvider<T>
protected static final org.apache.commons.logging.Log
protected org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations
protected int
protected StringSE
protected boolean
コンストラクターのサマリー
メソッドのサマリー
修飾子と型メソッド説明void
必須プロパティを確認します。NamedParameterJdbcOperations と SQL ステートメントに加えて、パラメーターソースが必要です。protected void
processUpdateCounts
(int[] updateCounts) 各項目の更新数を後処理する拡張ポイント。void
setAssertUpdates
(boolean assertUpdates) すべてのアイテムが少なくとも 1 つの行を更新することを表明するかどうかを決定するフラグのパブリック setter。void
setDataSource
(DataSourceSE dataSource) インジェクション用のデータソース用のパブリック setter。void
setItemPreparedStatementSetter
(ItemPreparedStatementSetter<T> preparedStatementSetter) ItemPreparedStatementSetter
のパブリック setter。void
setItemSqlParameterSourceProvider
(ItemSqlParameterSourceProvider<T> itemSqlParameterSourceProvider) ItemSqlParameterSourceProvider
のパブリック setter。void
setJdbcTemplate
(org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations namedParameterJdbcTemplate) NamedParameterJdbcOperations
の公開 setter。void
書き込み時に実行するクエリ文字列のパブリック setter。void
指定されたデータ要素を処理します。
フィールドの詳細
logger
protected static final org.apache.commons.logging.Log loggernamedParameterJdbcTemplate
protected org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations namedParameterJdbcTemplateitemPreparedStatementSetter
itemSqlParameterSourceProvider
sql
assertUpdates
protected boolean assertUpdatesparameterCount
protected int parameterCountusingNamedParameters
protected boolean usingNamedParameters
コンストラクターの詳細
JdbcBatchItemWriter
public JdbcBatchItemWriter()
メソッドの詳細
setAssertUpdates
public void setAssertUpdates(boolean assertUpdates) すべてのアイテムが少なくとも 1 つの行を更新することを表明するかどうかを決定するフラグのパブリック setter。- パラメーター:
assertUpdates
- 設定するフラグ。デフォルトは true です。
setSql
書き込み時に実行するクエリ文字列のパブリック setter。パラメーターは、ItemPreparedStatementSetter
に既知のパラメーターに対応する必要があります。- パラメーター:
sql
- 設定するクエリ
setItemPreparedStatementSetter
ItemPreparedStatementSetter
のパブリック setter。- パラメーター:
preparedStatementSetter
- 設定するItemPreparedStatementSetter
。これは、従来の "?" を使用するときに必要です。SQL ステートメントのプレースホルダー。
setItemSqlParameterSourceProvider
public void setItemSqlParameterSourceProvider(ItemSqlParameterSourceProvider<T> itemSqlParameterSourceProvider) ItemSqlParameterSourceProvider
のパブリック setter。- パラメーター:
itemSqlParameterSourceProvider
- 設定するItemSqlParameterSourceProvider
。これは、SQL ステートメントに名前付きパラメーターを使用し、書き込まれる型がMap
SE を実装しない場合に必要です。
setDataSource
インジェクション用のデータソース用のパブリック setter。- パラメーター:
dataSource
- クエリに使用するDataSource
SE
setJdbcTemplate
public void setJdbcTemplate(org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations namedParameterJdbcTemplate) NamedParameterJdbcOperations
の公開 setter。- パラメーター:
namedParameterJdbcTemplate
- 設定するNamedParameterJdbcOperations
afterPropertiesSet
public void afterPropertiesSet()必須プロパティを確認します。NamedParameterJdbcOperations と SQL ステートメントに加えて、パラメーターソースが必要です。- 次で指定:
- インターフェース
org.springframework.beans.factory.InitializingBean
のafterPropertiesSet
write
インターフェースからコピーされた説明:ItemWriter
指定されたデータ要素を処理します。通常の操作では null アイテムで呼び出されません。- 次で指定:
- インターフェース
ItemWriter<T>
のwrite
- パラメーター:
chunk
- 書きこまれる項目。null
であってはなりません。- 例外:
ExceptionSE
- エラーがある場合。フレームワークは例外をキャッチし、必要に応じて変換または再スローします。
processUpdateCounts
protected void processUpdateCounts(int[] updateCounts) 各項目の更新数を後処理する拡張ポイント。- パラメーター:
updateCounts
- 各項目の更新数の配列- 導入:
- 5.1