public class JdbcBatchItemWriter<T> extends java.lang.Object implements ItemWriter<T>, org.springframework.beans.factory.InitializingBean
NamedParameterJdbcTemplate
のバッチ機能を使用して、提供されたすべてのアイテムに対してステートメントのバッチを実行する ItemWriter
。
ItemPreparedStatementSetter
または ItemSqlParameterSourceProvider
のいずれかに SQL クエリと特別なコールバックを提供する必要があります。名前付きパラメーターまたは従来の "?" のいずれかを使用できます。プレースホルダー。名前付きパラメーターサポートを使用する場合は、ItemSqlParameterSourceProvider
を指定する必要があります。そうでない場合は、ItemPreparedStatementSetter
を指定する必要があります。このコールバックは、SQL ステートメントの実行に必要なパラメーターにアイテムをマッピングするロールを果たします。write(List)
はトランザクション内で呼び出されることが予想されます。修飾子と型 | フィールドと説明 |
---|---|
protected boolean | assertUpdates |
protected ItemPreparedStatementSetter<T> | itemPreparedStatementSetter |
protected ItemSqlParameterSourceProvider<T> | itemSqlParameterSourceProvider |
protected static org.apache.commons.logging.Log | logger |
protected org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations | namedParameterJdbcTemplate |
protected int | parameterCount |
protected java.lang.String | sql |
protected boolean | usingNamedParameters |
コンストラクターと説明 |
---|
JdbcBatchItemWriter() |
修飾子と型 | メソッドと説明 |
---|---|
void | afterPropertiesSet() 必須プロパティを確認します。SimpleJdbcTemplate と SQL ステートメントに加えて、パラメーターソースが必要です。 |
void | setAssertUpdates(boolean assertUpdates) すべてのアイテムが少なくとも 1 つの行を更新することを表明するかどうかを決定するフラグのパブリック setter。 |
void | setDataSource(javax.sql.DataSource 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 | setSql(java.lang.String sql) 書き込み時に実行するクエリ文字列のパブリック setter。 |
void | write(java.util.List<? extends T> items) 指定されたデータ要素を処理します。 |
protected static final org.apache.commons.logging.Log logger
protected org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations namedParameterJdbcTemplate
protected ItemPreparedStatementSetter<T> itemPreparedStatementSetter
protected ItemSqlParameterSourceProvider<T> itemSqlParameterSourceProvider
protected java.lang.String sql
protected boolean assertUpdates
protected int parameterCount
protected boolean usingNamedParameters
public void setAssertUpdates(boolean assertUpdates)
assertUpdates
- 設定するフラグ。デフォルトは true です。public void setSql(java.lang.String sql)
ItemPreparedStatementSetter
に既知のパラメーターに対応する必要があります。sql
- 設定するクエリ public void setItemPreparedStatementSetter(ItemPreparedStatementSetter<T> preparedStatementSetter)
ItemPreparedStatementSetter
のパブリック setter。preparedStatementSetter
- 設定する ItemPreparedStatementSetter
。これは、従来の "?" を使用するときに必要です。SQL ステートメントのプレースホルダー。public void setItemSqlParameterSourceProvider(ItemSqlParameterSourceProvider<T> itemSqlParameterSourceProvider)
ItemSqlParameterSourceProvider
のパブリック setter。itemSqlParameterSourceProvider
- 設定する ItemSqlParameterSourceProvider
。これは、SQL ステートメントに名前付きパラメーターを使用し、書き込まれる型が Map
を実装しない場合に必要です。public void setDataSource(javax.sql.DataSource dataSource)
dataSource
- クエリに使用する DataSource
public void setJdbcTemplate(org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations namedParameterJdbcTemplate)
NamedParameterJdbcOperations
の公開 setter。namedParameterJdbcTemplate
- 設定する NamedParameterJdbcOperations
public void afterPropertiesSet()
org.springframework.beans.factory.InitializingBean
の afterPropertiesSet
public void write(java.util.List<? extends T> items) throws java.lang.Exception
ItemWriter
ItemWriter<T>
の write
items
- 書かれる項目 java.lang.Exception
- エラーがある場合。フレームワークは例外をキャッチし、必要に応じて変換または再スローします。