クラス StoredProcedureItemReader<T>
java.lang.ObjectSE
org.springframework.batch.item.ItemStreamSupport
org.springframework.batch.item.support.AbstractItemStreamItemReader<T>
org.springframework.batch.item.support.AbstractItemCountingItemStreamItemReader<T>
org.springframework.batch.item.database.AbstractCursorItemReader<T>
org.springframework.batch.item.database.StoredProcedureItemReader<T>
- 実装されたすべてのインターフェース:
ItemReader<T>
、ItemStream
、ItemStreamReader<T>
、org.springframework.beans.factory.InitializingBean
ストアドプロシージャを実行し、返されたカーソルを読み取り、ResultSet
の次の行を継続的に取得するアイテムリーダーの実装。
カーソルを開くために使用される呼び出し可能ステートメントは、"READ_ONLY" オプションと "TYPE_FORWARD_ONLY" オプションを使用して作成されます。デフォルトでは、カーソルは別の接続を使用して開かれます。つまり、ステップ処理の一部として作成されたトランザクションには参加しません。
AbstractItemCountingItemStreamItemReader.read()
への各呼び出しは、提供された RowMapper を呼び出し、ResultSet を渡します。
このクラスは、同様の JdbcCursorItemReader
クラスをモデルにしています。
このリーダーはスレッドセーフではありません。
- 作成者:
- Thomas Risberg, Mahmoud Ben Hassine
フィールドのサマリー
クラス org.springframework.batch.item.database.AbstractCursorItemReader から継承されたフィールド
log, rs, VALUE_NOT_SET
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明void
必須プロパティが設定されていることを確認します。protected void
cleanupOnClose
(ConnectionSE connection) カーソルとデータベース接続を閉じます。getSql()
protected void
openCursor
(ConnectionSE con) protected T
readCursor
(ResultSetSE rs, int currentRow) カーソルを読み取り、このリーダーが返すオブジェクトの型にマッピングします。void
setFunction
(boolean function) このストアドプロシージャが関数であるかどうかを設定します。void
setParameters
(org.springframework.jdbc.core.SqlParameter[] parameters) 1 つ以上の宣言されたパラメーターを追加します。void
setPreparedStatementSetter
(org.springframework.jdbc.core.PreparedStatementSetter preparedStatementSetter) 指定されたクエリで設定する必要があるパラメーター値がある場合に使用する PreparedStatementSetter を設定します。void
setProcedureName
(StringSE sprocedureName) カーソルの作成時に使用される SQL ステートメントを設定します。void
setRefCursorPosition
(int refCursorPosition) REFCURSOR のパラメーター位置を設定します。void
setRowMapper
(org.springframework.jdbc.core.RowMapper<T> rowMapper) read() へのすべての呼び出しに使用される RowMapper を設定します。クラス org.springframework.batch.item.database.AbstractCursorItemReader から継承されたメソッド
applyStatementSettings, doClose, doOpen, doRead, getDataSource, getExceptionTranslator, handleWarnings, initializeConnection, isUseSharedExtendedConnection, jumpToItem, setConnectionAutoCommit, setDataSource, setDriverSupportsAbsolute, setFetchSize, setIgnoreWarnings, setMaxRows, setQueryTimeout, setUseSharedExtendedConnection, setVerifyCursorPosition, translateSqlException
クラス org.springframework.batch.item.support.AbstractItemCountingItemStreamItemReader から継承されたメソッド
close, getCurrentItemCount, isSaveState, open, read, setCurrentItemCount, setMaxItemCount, setSaveState, update
クラス org.springframework.batch.item.ItemStreamSupport から継承されたメソッド
getExecutionContextKey, getName, setExecutionContextName, setName
コンストラクターの詳細
StoredProcedureItemReader
public StoredProcedureItemReader()
メソッドの詳細
setRowMapper
read() へのすべての呼び出しに使用される RowMapper を設定します。- パラメーター:
rowMapper
- 結果のマッピングに使用する RowMapper
setProcedureName
カーソルの作成時に使用される SQL ステートメントを設定します。このステートメントは、変更なしで直接実行されるため、完全で有効な SQL ステートメントである必要があります。- パラメーター:
sprocedureName
- ステートメントの呼び出しに使用される SQL
setPreparedStatementSetter
public void setPreparedStatementSetter(org.springframework.jdbc.core.PreparedStatementSetter preparedStatementSetter) 指定されたクエリで設定する必要があるパラメーター値がある場合に使用する PreparedStatementSetter を設定します。- パラメーター:
preparedStatementSetter
- SQL への入力に使用
setParameters
public void setParameters(org.springframework.jdbc.core.SqlParameter[] parameters) 1 つ以上の宣言されたパラメーターを追加します。Bean ファクトリで使用される場合、この操作を構成するために使用されます。各パラメーターは、SQL 型と(オプションで)パラメーターの名前を指定します。- パラメーター:
parameters
- 宣言されたSqlParameter
オブジェクトを含む配列
setFunction
public void setFunction(boolean function) このストアドプロシージャが関数であるかどうかを設定します。- パラメーター:
function
- インジケータ
setRefCursorPosition
public void setRefCursorPosition(int refCursorPosition) REFCURSOR のパラメーター位置を設定します。REFCURSOR を使用する Oracle および PostgreSQL にのみ使用されます。他のデータベースの場合、これはデフォルトである 0 として保持する必要があります。- パラメーター:
refCursorPosition
- REFCURSOR のパラメーター位置
afterPropertiesSet
必須プロパティが設定されていることを確認します。- 次で指定:
- インターフェース
org.springframework.beans.factory.InitializingBean
のafterPropertiesSet
- オーバーライド:
- クラス
AbstractCursorItemReader<T>
のafterPropertiesSet
- 例外:
IllegalArgumentExceptionSE
- データソースまたは SQL プロパティが設定されていない場合。ExceptionSE
openCursor
- 次で指定:
- クラス
AbstractCursorItemReader<T>
のopenCursor
readCursor
クラスからコピーされた説明:AbstractCursorItemReader
カーソルを読み取り、このリーダーが返すオブジェクトの型にマッピングします。このメソッドはサブクラスでオーバーライドする必要があります。- 次で指定:
- クラス
AbstractCursorItemReader<T>
のreadCursor
- パラメーター:
rs
- 現在の結果セットcurrentRow
- 結果セットの現在の位置- 戻り値:
- カーソル位置のマップされたオブジェクト
- 例外:
SQLExceptionSE
- 現在の結果セットとの相互作用が失敗した場合
cleanupOnClose
カーソルとデータベース接続を閉じます。- 次で指定:
- クラス
AbstractCursorItemReader<T>
のcleanupOnClose
- パラメーター:
connection
- データベースへ
getSql
- 次で指定:
- クラス
AbstractCursorItemReader<T>
のgetSql