クラス 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 booleanprotected ItemPreparedStatementSetter<T>protected ItemSqlParameterSourceProvider<T>protected static final org.apache.commons.logging.Logprotected org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperationsprotected intprotected StringSEprotected booleanコンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明void必須プロパティを確認します。NamedParameterJdbcOperations と SQL ステートメントに加えて、パラメーターソースが必要です。protected voidprocessUpdateCounts(int[] updateCounts) 各項目の更新数を後処理する拡張ポイント。voidsetAssertUpdates(boolean assertUpdates) すべてのアイテムが少なくとも 1 つの行を更新することを表明するかどうかを決定するフラグのパブリック setter。voidsetDataSource(DataSourceSE dataSource) インジェクション用のデータソース用のパブリック setter。voidsetItemPreparedStatementSetter(ItemPreparedStatementSetter<T> preparedStatementSetter) ItemPreparedStatementSetterのパブリック setter。voidsetItemSqlParameterSourceProvider(ItemSqlParameterSourceProvider<T> itemSqlParameterSourceProvider) ItemSqlParameterSourceProviderのパブリック setter。voidsetJdbcTemplate(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 ステートメントに名前付きパラメーターを使用し、書き込まれる型がMapSE を実装しない場合に必要です。
setDataSource
インジェクション用のデータソース用のパブリック setter。- パラメーター:
dataSource- クエリに使用するDataSourceSE
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