public class RepositoryItemWriter<T> extends java.lang.Object implements ItemWriter<T>, org.springframework.beans.factory.InitializingBean
Spring Data の CrudRepository
用の ItemWriter
ラッパー。
デフォルトでは、setMethodName(java.lang.String)
で別の方法が選択されていない限り、このライターは CrudRepository.saveAll(Iterable)
を使用してアイテムを保存します。チャンクのアイテムを格納するのは CrudRepository.saveAll(Iterable)
メソッドに依存します。パフォーマンスは、このライターよりもその実装によって決定されます。
提供されたリポジトリがスレッドセーフである限り、プロパティが設定されると(通常のシングルトン動作)、このライターもスレッドセーフになるため、複数の同時トランザクションで使用できます。
NOTE: RepositoryItemWriter
は、プリミティブ以外の Java オブジェクトのみを保存します。
修飾子と型 | フィールドと説明 |
---|---|
protected static org.apache.commons.logging.Log | logger |
コンストラクターと説明 |
---|
RepositoryItemWriter() |
修飾子と型 | メソッドと説明 |
---|---|
void | afterPropertiesSet() 必須プロパティを確認してください - リポジトリが必要です。 |
protected void | doWrite(java.util.List<? extends T> items) リポジトリへの実際の書き込みを実行します。 |
void | setMethodName(java.lang.String methodName) 呼び出すリポジトリ上のメソッドを指定します。 |
void | setRepository(org.springframework.data.repository.CrudRepository<T,?> repository) 永続化のために CrudRepository 実装を設定する |
void | write(java.util.List<? extends T> items) Spring Data リポジトリを介してすべてのアイテムをデータストアに書き込みます。 |
public void setMethodName(java.lang.String methodName)
methodName
- メソッド名を含む String
。public void setRepository(org.springframework.data.repository.CrudRepository<T,?> repository)
CrudRepository
実装を設定する repository
- 設定する Spring Data リポジトリ public void write(java.util.List<? extends T> items) throws java.lang.Exception
ItemWriter<T>
の write
items
- 書かれる項目 java.lang.Exception
- エラーがある場合。フレームワークは例外をキャッチし、必要に応じて変換または再スローします。ItemWriter.write(java.util.List)
protected void doWrite(java.util.List<? extends T> items) throws java.lang.Exception
items
- 永続化するアイテムのリスト。java.lang.Exception
- 書き込み中にエラーが発生した場合にスローされます。public void afterPropertiesSet() throws java.lang.Exception
org.springframework.beans.factory.InitializingBean
の afterPropertiesSet
java.lang.Exception