クラス JdbcTemplate
- 実装済みのインターフェース一覧:
InitializingBean, JdbcOperations
JdbcClient を検討してください。 このクラスは JDBC の使用を簡素化し、一般的なエラーの回避に役立ちます。コアの JDBC ワークフローを実行し、SQL を提供して結果を抽出するアプリケーションコードを残します。このクラスは SQL クエリまたは更新を実行し、ResultSets 上で反復を開始し、JDBC 例外をキャッチして共通の org.springframework.dao 例外階層に変換します。
このクラスを使用するコードは、コールバックインターフェースを実装するだけでよく、明確に定義された契約を提供します。PreparedStatementCreator コールバックインターフェースは、接続が指定された準備済みステートメントを作成し、SQL および必要なパラメーターを提供します。ResultSetExtractor インターフェースは、ResultSet から値を抽出します。2 つの一般的な代替コールバックインターフェースについては、PreparedStatementSetter および RowMapper も参照してください。
このテンプレートクラスのインスタンスは、一度設定されるとスレッドセーフになります。DataSource 参照を使用した直接インスタンス化を介してサービス実装内で使用することも、アプリケーションコンテキストで準備して Bean 参照としてサービスに与えることもできます。注: DataSource は、アプリケーションコンテキストで常に Bean として構成する必要があります。最初の場合はサービスに直接指定され、2 番目の場合は準備されたテンプレートに指定されます。
このクラスは、コールバックインターフェースと SQLExceptionTranslator インターフェースによってパラメーター化できるため、サブクラス化する必要はありません。
このクラスによって実行されるすべての SQL 操作は、ログカテゴリとして "org.springframework.jdbc.core.JdbcTemplate" を使用して、デバッグレベルでログに記録されます。
注: 6.1 では、JdbcClient の形式で利用可能な統合 JDBC アクセスファサードがあります。JdbcClient は、インデックス付きパラメーターまたは名前付きパラメーターを柔軟に使用して、一般的な JDBC クエリ / 更新に流れるような API スタイルを提供します。実際の実行は JdbcTemplate/NamedParameterJdbcTemplate に委譲されます。
- 導入:
- 2001 年 5 月 3 日
- 作成者:
- Rod Johnson, Juergen Hoeller, Thomas Risberg, Yanming Zhou
- 関連事項:
フィールドのサマリー
クラス JdbcAccessor から継承されたフィールド
loggerコンストラクター概要
コンストラクターコンストラクター説明Bean 用の新しい JdbcTemplate を作成します。JdbcTemplate(DataSourceSE dataSource) 接続を取得する DataSource を指定して、新しい JdbcTemplate を構築します。JdbcTemplate(DataSourceSE dataSource, boolean lazyInit) 接続を取得する DataSource を指定して、新しい JdbcTemplate を構築します。JdbcTemplate(JdbcAccessor original) 派生した JdbcTemplate のコピーコンストラクター。方法の概要
修飾子と型メソッド説明protected void指定された JDBC ステートメント(または PreparedStatement または CallableStatement)を準備し、フェッチサイズ、最大行、クエリタイムアウトなどのステートメント設定を適用します。int[]batchUpdate(StringSE... sql) バッチ処理を使用して、単一の JDBC ステートメントで複数の SQL 更新を発行します。<T> int[][]batchUpdate(StringSE sql, CollectionSE<T> batchArgs, int batchSize, ParameterizedPreparedStatementSetter<T> pss) 提供された引数を収集して提供された SQL ステートメントを使用して、複数のバッチを実行します。int[]batchUpdate(StringSE sql, ListSE<ObjectSE[]> batchArgs) 提供された引数のバッチで提供された SQL ステートメントを使用して、バッチを実行します。int[]batchUpdate(StringSE sql, ListSE<ObjectSE[]> batchArgs, int[] argTypes) 提供された引数のバッチで提供された SQL ステートメントを使用して、バッチを実行します。int[]batchUpdate(StringSE sql, BatchPreparedStatementSetter pss) 単一の PreparedStatement で複数の更新ステートメントを発行し、バッチ更新と BatchPreparedStatementSetter を使用して値を設定します。int[]batchUpdate(PreparedStatementCreator psc, BatchPreparedStatementSetter pss, KeyHolder generatedKeyHolder) 単一の PreparedStatement で複数の更新ステートメントを発行し、バッチ更新と BatchPreparedStatementSetter を使用して値を設定します。call(CallableStatementCreator csc, ListSE<SqlParameter> declaredParameters) CallableStatementCreator を使用して SQL 呼び出しを実行し、SQL および必要なパラメーターを提供します。protected ConnectionSE指定された JDBC 接続用の密接抑制プロキシを作成します。結果マップとして使用される Map インスタンスを作成します。void単一の SQL 実行(通常は DDL ステートメント)を発行します。execute(StringSE callString, CallableStatementCallback<T> action) JDBC CallableStatement で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。execute(StringSE sql, PreparedStatementCallback<T> action) JDBC PreparedStatement で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。execute(CallableStatementCreator csc, CallableStatementCallback<T> action) JDBC CallableStatement で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。execute(ConnectionCallback<T> action) JDBC 接続で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。execute(PreparedStatementCreator psc, PreparedStatementCallback<T> action) JDBC PreparedStatement で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。execute(StatementCallback<T> action) JDBC ステートメントで動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。extractOutputParameters(CallableStatementSE cs, ListSE<SqlParameter> parameters) 完了したストアドプロシージャから出力パラメーターを抽出します。extractReturnedResults(CallableStatementSE cs, @Nullable ListSE<SqlParameter> updateCountParameters, @Nullable ListSE<SqlParameter> resultSetParameters, int updateCount) 完了したストアドプロシージャから返された ResultSets を抽出します。列をキーと値のペアとして読み取るための新しい RowMapper を作成します。intこの JdbcTemplate に指定されたフェッチサイズを返します。intこの JdbcTemplate に指定された行の最大数を返します。intこの JdbcTemplate が実行するステートメントのクエリタイムアウト (秒) を返します。getSingleColumnRowMapper(ClassSE<T> requiredType) 単一の列から結果オブジェクトを読み取るための新しい RowMapper を作成します。protected voidhandleWarnings(@Nullable SQLWarningSE warning) 実際の警告が発生した場合は、SQLWarningExceptionをスローします。protected voidhandleWarnings(StatementSE stmt) 指定された JDBC ステートメントに警告がある場合は、それを処理します。protected voidhandleWarnings(StatementSE stmt, SQLExceptionSE ex) 指定されたステートメントの実行からプライマリSQLExceptionを伝播する前に、警告を処理します。booleanSQLWarnings を無視するかどうかを返します。booleanCallableStatement を実行すると、パラメーターに大文字と小文字を区別しない名前を使用するマップで結果が返されるかどうかを返します。boolean結果処理をスキップするかどうかを返します。boolean宣言されていない結果をスキップするかどうかを返します。protected PreparedStatementSetter渡された引数を使用して、新しい引数ベースの PreparedStatementSetter を作成します。protected PreparedStatementSetternewArgTypePreparedStatementSetter(@Nullable ObjectSE @Nullable [] args, int[] argTypes) 渡された引数と型を使用して、新しい引数型ベースの PreparedStatementSetter を作成します。ストアドプロシージャから指定された ResultSet を処理します。query(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes, ResultSetExtractor<T> rse) 指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。void指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を結果オブジェクトにマッピングします。使用すべきではありません。void使用すべきではありません。使用すべきではありません。query(StringSE sql, @Nullable PreparedStatementSetter pss, ResultSetExtractor<T> rse) ResultSet を ResultSetExtractor で読み取り、準備済みステートメントを使用して照会します。voidquery(StringSE sql, @Nullable PreparedStatementSetter pss, RowCallbackHandler rch) 指定された SQL を照会して、SQL から準備済みステートメントを作成し、値を照会にバインドする方法を知っている PreparedStatementSetter 実装を作成し、RowCallbackHandler で行ごとに ResultSet を読み取ります。query(StringSE sql, @Nullable PreparedStatementSetter pss, RowMapper<T> rowMapper) 与えられた SQL をクエリして、SQL から準備されたステートメントを作成し、RowMapper を介して各行を結果オブジェクトにマッピングして、クエリに値をバインドする方法を知っている PreparedStatementSetter 実装を作成します。query(StringSE sql, ResultSetExtractor<T> rse) 静的 SQL を指定してクエリを実行し、ResultSet を ResultSetExtractor で読み取ります。指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。voidquery(StringSE sql, RowCallbackHandler rch) RowCallbackHandler を使用して行ごとに ResultSet を読み取り、静的 SQL を指定してクエリを実行します。void指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。静的 SQL を指定してクエリを実行し、RowMapper を介して各行を結果オブジェクトにマッピングします。指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を結果オブジェクトにマッピングします。query(PreparedStatementCreator psc, @Nullable PreparedStatementSetter pss, ResultSetExtractor<T> rse) PreparedStatementCreator および PreparedStatementSetter を許可する準備済みステートメントを使用した照会。query(PreparedStatementCreator psc, ResultSetExtractor<T> rse) ResultSet を ResultSetExtractor で読み取り、準備済みステートメントを使用して照会します。voidquery(PreparedStatementCreator psc, RowCallbackHandler rch) RowCallbackHandler で行ごとに ResultSet を読み取り、準備されたステートメントを使用して照会します。query(PreparedStatementCreator psc, RowMapper<T> rowMapper) 準備済みステートメントを使用して照会し、RowMapper を介して各行を結果オブジェクトにマッピングします。queryForList(StringSE sql) 静的 SQL を指定して、結果リストのクエリを実行します。queryForList(StringSE sql, @Nullable ObjectSE @Nullable... args) 指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。queryForList(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes) 指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。queryForList(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes, ClassSE<T> elementType) 指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。使用すべきではありません。queryForList(StringSE sql, ClassSE<T> elementType) 静的 SQL を指定して、結果リストのクエリを実行します。指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。queryForMap(StringSE sql) 静的 SQL を指定して、結果マップのクエリを実行します。queryForMap(StringSE sql, @Nullable ObjectSE @Nullable... args) 指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果マップを期待します。queryForMap(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes) 指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果マップを期待します。<T> @Nullable TqueryForObject(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes, ClassSE<T> requiredType) 指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。queryForObject(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes, RowMapper<T> rowMapper) 指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。<T> @Nullable T使用すべきではありません。使用すべきではありません。<T> @Nullable TqueryForObject(StringSE sql, ClassSE<T> requiredType) 静的 SQL を指定して、結果オブジェクトのクエリを実行します。<T> @Nullable T指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。queryForObject(StringSE sql, RowMapper<T> rowMapper) 静的 SQL を指定してクエリを実行し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。queryForRowSet(StringSE sql) 静的 SQL を指定して、SqlRowSet のクエリを実行します。queryForRowSet(StringSE sql, @Nullable ObjectSE @Nullable... args) 指定された SQL を照会して、SQL から準備済みステートメントを作成し、SqlRowSet を想定して、照会にバインドする引数のリストを作成します。queryForRowSet(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes) 指定された SQL を照会して、SQL から準備済みステートメントを作成し、SqlRowSet を想定して、照会にバインドする引数のリストを作成します。queryForStream(StringSE sql, @Nullable PreparedStatementSetter pss, RowMapper<T> rowMapper) 指定された SQL をクエリして、SQL とクエリに値をバインドする方法を知っている PreparedStatementSetter 実装から準備済みステートメントを作成し、各行を RowMapper を介して結果オブジェクトにマッピングし、反復可能でクローズ可能なストリームに変換します。<T> StreamSE<T> queryForStream(StringSE sql, RowMapper<T> rowMapper) 静的 SQL を指定してクエリを実行し、各行を RowMapper を介して結果オブジェクトにマッピングし、それを反復可能でクローズ可能なストリームに変換します。指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、各行を RowMapper を介して結果オブジェクトにマッピングし、それを反復可能でクローズ可能なストリームに変換します。queryForStream(PreparedStatementCreator psc, @Nullable PreparedStatementSetter pss, RowMapper<T> rowMapper) PreparedStatementCreator および PreparedStatementSetter を許可する準備済みステートメントを使用した照会。queryForStream(PreparedStatementCreator psc, RowMapper<T> rowMapper) 準備済みステートメントを使用してクエリを実行し、各行を RowMapper を介して結果オブジェクトにマッピングし、それを反復可能でクローズ可能なストリームに変換します。voidsetFetchSize(int fetchSize) この JdbcTemplate のフェッチサイズを設定します。voidsetIgnoreWarnings(boolean ignoreWarnings) JDBC ステートメントの警告 (SQLWarningSE ) を無視するかどうかを設定します。voidsetMaxRows(int maxRows) この JdbcTemplate の最大行数を設定します。voidsetQueryTimeout(int queryTimeout) この JdbcTemplate が実行するステートメントのクエリタイムアウト (秒) を設定します。voidsetResultsMapCaseInsensitive(boolean resultsMapCaseInsensitive) CallableStatement を実行すると、パラメーターに大文字と小文字を区別しない名前を使用するマップで結果が返されるかどうかを設定します。voidsetSkipResultsProcessing(boolean skipResultsProcessing) 結果処理をスキップするかどうかを設定します。voidsetSkipUndeclaredResults(boolean skipUndeclaredResults) 宣言されていない結果をスキップするかどうかを設定します。protected DataAccessExceptiontranslateException(StringSE task, @Nullable StringSE sql, SQLExceptionSE ex) 指定されたSQLExceptionSE を汎用DataAccessExceptionに変換します。int単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行します。int準備されたステートメントを介して、単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行し、指定された引数をバインドします。int準備されたステートメントを介して、単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行し、指定された引数をバインドします。intupdate(StringSE sql, @Nullable PreparedStatementSetter pss) PreparedStatementSetter を使用して更新ステートメントを発行し、指定された SQL でバインドパラメーターを設定します。intPreparedStatementCreator を使用して単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行し、SQL および必要なパラメーターを提供します。protected intintupdate(PreparedStatementCreator psc, KeyHolder generatedKeyHolder) PreparedStatementCreator を使用して更新ステートメントを発行し、SQL および必要なパラメーターを提供します。
コンストラクターの詳細
JdbcTemplate
public JdbcTemplate()Bean 用の新しい JdbcTemplate を作成します。メモ: インスタンスを使用する前に、DataSource を設定する必要があります。
- 関連事項:
JdbcTemplate
接続を取得する DataSource を指定して、新しい JdbcTemplate を構築します。メモ: これは、例外トランスレーターの初期化をトリガーしません。
- パラメーター:
dataSource- 接続を取得する JDBC DataSource
JdbcTemplate
接続を取得する DataSource を指定して、新しい JdbcTemplate を構築します。メモ: "lazyInit" フラグに応じて、例外トランスレータの初期化がトリガーされます。
- パラメーター:
dataSource- 接続を取得する JDBC DataSourcelazyInit- SQLExceptionTranslator を遅延初期化するかどうか
JdbcTemplate
派生した JdbcTemplate のコピーコンストラクター。- パラメーター:
original- コピー元のテンプレート- 導入:
- 7.0
メソッドの詳細
setIgnoreWarnings
public void setIgnoreWarnings(boolean ignoreWarnings) JDBC ステートメントの警告 (SQLWarningSE ) を無視するかどうかを設定します。デフォルトは
trueで、すべての警告を飲み込んでログに記録します。このフラグをfalseに切り替えて、この JdbcTemplate が代わりにSQLWarningExceptionをスローするようにします (または、チェーンがあれば、プライマリSQLExceptionSE にSQLWarningSE をスローします)。- 関連事項:
isIgnoreWarnings
public boolean isIgnoreWarnings()SQLWarnings を無視するかどうかを返します。setFetchSize
public void setFetchSize(int fetchSize) この JdbcTemplate のフェッチサイズを設定します。これは大きな結果セットを処理するために重要です。これをデフォルト値よりも高く設定すると、メモリ消費を犠牲にして処理速度が向上します。この値を低く設定すると、アプリケーションによって読み取られない行データの転送を回避できます。デフォルトは -1 で、JDBC ドライバーのデフォルト設定を使用することを示します(つまり、特定のフェッチサイズ設定をドライバーに渡さないようにします)。
メモ: 4.3 以降では、たとえば MySQL が
Integer.MIN_VALUEの特別な動作をサポートしているため、-1 以外の負の値がドライバーに渡されます。- 関連事項:
getFetchSize
public int getFetchSize()この JdbcTemplate に指定されたフェッチサイズを返します。setMaxRows
public void setMaxRows(int maxRows) この JdbcTemplate の最大行数を設定します。これは、大きな結果セットのサブセットを処理するために重要です。最初に結果全体に関心がない場合(たとえば、次のような検索を実行する場合)、データベースまたは JDBC ドライバーで結果セット全体を読み取って保持することを避けます多数の一致が返される場合があります)。デフォルトは -1 で、JDBC ドライバーのデフォルト構成を使用することを示します(つまり、特定の最大行設定をドライバーに渡さないようにします)。
注: 4.3 以降、特別な MySQL 値に対する
setFetchSize(int)のサポートと同期して、-1 以外の負の値がドライバーに渡されます。- 関連事項:
getMaxRows
public int getMaxRows()この JdbcTemplate に指定された行の最大数を返します。setQueryTimeout
public void setQueryTimeout(int queryTimeout) この JdbcTemplate が実行するステートメントのクエリタイムアウト (秒) を設定します。デフォルトは -1 で、JDBC ドライバーのデフォルトを使用する(つまり、ドライバーで特定のクエリタイムアウト設定を渡さない)ことを示します。
メモ: ここで指定されたタイムアウトは、トランザクションレベルで指定されたタイムアウトを持つトランザクション内で実行すると、残りのトランザクションタイムアウトによってオーバーライドされます。
- 関連事項:
getQueryTimeout
public int getQueryTimeout()この JdbcTemplate が実行するステートメントのクエリタイムアウト (秒) を返します。setSkipResultsProcessing
public void setSkipResultsProcessing(boolean skipResultsProcessing) 結果処理をスキップするかどうかを設定します。結果が返されていないことがわかっている場合、呼び出し可能なステートメントの処理を最適化するために使用できます。out パラメーターの処理は引き続き行われます。これは、10.1.0.2 などの一部の古い Oracle JDBC ドライバーのバグを回避するために使用できます。isSkipResultsProcessing
public boolean isSkipResultsProcessing()結果処理をスキップするかどうかを返します。setSkipUndeclaredResults
public void setSkipUndeclaredResults(boolean skipUndeclaredResults) 宣言されていない結果をスキップするかどうかを設定します。isSkipUndeclaredResults
public boolean isSkipUndeclaredResults()宣言されていない結果をスキップするかどうかを返します。setResultsMapCaseInsensitive
public void setResultsMapCaseInsensitive(boolean resultsMapCaseInsensitive) CallableStatement を実行すると、パラメーターに大文字と小文字を区別しない名前を使用するマップで結果が返されるかどうかを設定します。isResultsMapCaseInsensitive
public boolean isResultsMapCaseInsensitive()CallableStatement を実行すると、パラメーターに大文字と小文字を区別しない名前を使用するマップで結果が返されるかどうかを返します。execute
public <T extends @Nullable ObjectSE> T execute(ConnectionCallback<T> action) throws DataAccessException インターフェースからコピーされた説明:JdbcOperationsJDBC 接続で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で任意のデータアクセス操作を実装できます。つまり、Spring 管理のトランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。
- 次で指定:
- インターフェース
JdbcOperationsのexecute - パラメーター:
action- アクションを指定するコールバックオブジェクト- 戻り値:
- アクションによって返された結果オブジェクト。ない場合は
null - 例外:
DataAccessException- 問題がある場合
createConnectionProxy
指定された JDBC 接続用の密接抑制プロキシを作成します。executeメソッドによって呼び出されます。プロキシは、返された JDBC ステートメントも準備し、フェッチサイズ、最大行、クエリタイムアウトなどのステートメント設定を適用します。
- パラメーター:
con- プロキシを作成する JDBC 接続- 戻り値:
- 接続プロキシ
- 関連事項:
execute
public <T extends @Nullable ObjectSE> T execute(StatementCallback<T> action) throws DataAccessException インターフェースからコピーされた説明:JdbcOperationsJDBC ステートメントで動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLExceptions を Spring の DataAccessException 階層に変換します。コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。
- 次で指定:
- インターフェース
JdbcOperationsのexecute - パラメーター:
action- アクションを指定するコールバック- 戻り値:
- アクションによって返された結果オブジェクト。ない場合は
null - 例外:
DataAccessException- 問題がある場合
execute
インターフェースからコピーされた説明:JdbcOperations単一の SQL 実行(通常は DDL ステートメント)を発行します。- 次で指定:
- インターフェース
JdbcOperationsのexecute - パラメーター:
sql- 実行する静的 SQL- 例外:
DataAccessException- 問題がある場合
query
public <T extends @Nullable ObjectSE> T query(StringSE sql, ResultSetExtractor<T> rse) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations静的 SQL を指定してクエリを実行し、ResultSet を ResultSetExtractor で読み取ります。PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として
nullでオーバーロードされたqueryメソッドを使用します。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリrse- 結果のすべての行を抽出するコールバック- 戻り値:
- ResultSetExtractor によって返される任意の結果オブジェクト
- 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
query
インターフェースからコピーされた説明:JdbcOperationsRowCallbackHandler を使用して行ごとに ResultSet を読み取り、静的 SQL を指定してクエリを実行します。PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として
nullでオーバーロードされたqueryメソッドを使用します。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリrch- 結果を 1 行ずつ抽出するコールバック- 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
query
public <T extends @Nullable ObjectSE> ListSE<T> query(StringSE sql, RowMapper<T> rowMapper) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations静的 SQL を指定してクエリを実行し、RowMapper を介して各行を結果オブジェクトにマッピングします。PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として
nullでオーバーロードされたqueryメソッドを使用します。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリrowMapper- 行ごとに 1 つのオブジェクトをマップするコールバック- 戻り値:
- マッピングされたオブジェクトを含む結果リスト
- 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
queryForStream
public <T> StreamSE<T> queryForStream(StringSE sql, RowMapper<T> rowMapper) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations静的 SQL を指定してクエリを実行し、各行を RowMapper を介して結果オブジェクトにマッピングし、それを反復可能でクローズ可能なストリームに変換します。PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として
nullでオーバーロードされたqueryメソッドを使用します。- 次で指定:
- インターフェース
JdbcOperationsのqueryForStream - パラメーター:
sql- 実行する SQL クエリrowMapper- 行ごとに 1 つのオブジェクトをマップするコールバック- 戻り値:
- マップされたオブジェクトを含む結果のストリーム。完全に処理されたら閉じる必要があります (たとえば、try-with-resources 句を通して)
- 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
queryForMap
インターフェースからコピーされた説明:JdbcOperations静的 SQL を指定して、結果マップのクエリを実行します。PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として
nullでオーバーロードされたJdbcOperations.queryForMap(String, Object...)メソッドを使用します。クエリは単一行クエリであることが期待されています。結果行はマップにマップされます(列名をキーとして使用して、各列に 1 つのエントリ)。
- 次で指定:
- インターフェース
JdbcOperationsのqueryForMap - パラメーター:
sql- 実行する SQL クエリ- 戻り値:
- 結果マップ (列名をキーとして、列ごとに 1 つのエントリ)
- 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
queryForObject
public <T extends @Nullable ObjectSE> T queryForObject(StringSE sql, RowMapper<T> rowMapper) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations静的 SQL を指定してクエリを実行し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として
nullでオーバーロードされたJdbcOperations.queryForObject(String, RowMapper, Object...)メソッドを使用します。- 次で指定:
- インターフェース
JdbcOperationsのqueryForObject - パラメーター:
sql- 実行する SQL クエリrowMapper- 行ごとに 1 つのオブジェクトをマップするコールバック- 戻り値:
- 単一のマッピングされたオブジェクト (指定された
RowMapperがnullを返した場合、nullになる可能性がある) - 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
queryForObject
public <T> @Nullable T queryForObject(StringSE sql, ClassSE<T> requiredType) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations静的 SQL を指定して、結果オブジェクトのクエリを実行します。PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として
nullでオーバーロードされたJdbcOperations.queryForObject(String, Class, Object...)メソッドを使用します。このメソッドは、既知の結果で静的 SQL を実行できます。クエリは、単一の行 / 単一列クエリであることが期待されています。返された結果は、対応するオブジェクト型に直接マップされます。
- 次で指定:
- インターフェース
JdbcOperationsのqueryForObject - パラメーター:
sql- 実行する SQL クエリrequiredType- 結果オブジェクトが一致すると予想される型- 戻り値:
- 必要な型の結果オブジェクト、または SQL NULL の場合は
null - 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
queryForList
public <T> ListSE<@Nullable T> queryForList(StringSE sql, ClassSE<T> elementType) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations静的 SQL を指定して、結果リストのクエリを実行します。PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として
nullでオーバーロードされたqueryForListメソッドを使用します。結果は、結果オブジェクトのリスト(各行に 1 つのエントリ)にマップされ、各オブジェクトは指定された要素型に一致します。
- 次で指定:
- インターフェース
JdbcOperationsのqueryForList - パラメーター:
sql- 実行する SQL クエリelementType- 結果リスト内の必須型の要素 (たとえば、Integer.class)- 戻り値:
- 指定された要素型に一致するオブジェクトのリスト
- 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
queryForList
public ListSE<MapSE<StringSE, @Nullable ObjectSE>> queryForList(StringSE sql) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations静的 SQL を指定して、結果リストのクエリを実行します。PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として
nullでオーバーロードされたqueryForListメソッドを使用します。結果は、マップのリスト(各行に 1 つのエントリ)にマップされます(列名をキーとして使用して、各列に 1 つのエントリ)。リスト内の各要素は、このインターフェースの
queryForMapメソッドによって返される形式になります。- 次で指定:
- インターフェース
JdbcOperationsのqueryForList - パラメーター:
sql- 実行する SQL クエリ- 戻り値:
- 行ごとにマップを含むリスト
- 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
queryForRowSet
インターフェースからコピーされた説明:JdbcOperations静的 SQL を指定して、SqlRowSet のクエリを実行します。PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として
nullでオーバーロードされたqueryForRowSetメソッドを使用します。結果は SqlRowSet にマップされ、切断された方法でデータを保持します。このラッパーは、スローされた SQLException を変換します。
デフォルトの実装では、実行時に JDBC RowSet サポートが使用可能である必要があることに注意してください。デフォルトでは、標準の JDBC
CachedRowSetが使用されます。- 次で指定:
- インターフェース
JdbcOperationsのqueryForRowSet - パラメーター:
sql- 実行する SQL クエリ- 戻り値:
- SqlRowSet 表現 (おそらく
javax.sql.rowset.CachedRowSetのラッパー) - 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
update
インターフェースからコピーされた説明:JdbcOperations単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行します。- 次で指定:
- インターフェース
JdbcOperationsのupdate - パラメーター:
sql- 実行する静的 SQL- 戻り値:
- 影響を受ける行の数
- 例外:
DataAccessException- 問題がある場合。
batchUpdate
インターフェースからコピーされた説明:JdbcOperationsバッチ処理を使用して、単一の JDBC ステートメントで複数の SQL 更新を発行します。JDBC ドライバーがバッチ更新をサポートしていない場合、単一のステートメントで個別の更新にフォールバックします。
- 次で指定:
- インターフェース
JdbcOperationsのbatchUpdate - パラメーター:
sql- 実行される SQL ステートメントの配列を定義します。- 戻り値:
- 各ステートメントの影響を受ける行数の配列
- 例外:
DataAccessException- バッチの実行に問題がある場合
execute
public <T extends @Nullable ObjectSE> T execute(PreparedStatementCreator psc, PreparedStatementCallback<T> action) throws DataAccessException インターフェースからコピーされた説明:JdbcOperationsJDBC PreparedStatement で動作するコールバックアクションとして実装された JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。
- 次で指定:
- インターフェース
JdbcOperationsのexecute - パラメーター:
psc- 接続を指定して PreparedStatement を作成するコールバックaction- アクションを指定するコールバック- 戻り値:
- アクションによって返された結果オブジェクト。ない場合は
null - 例外:
DataAccessException- 問題がある場合
execute
public <T extends @Nullable ObjectSE> T execute(StringSE sql, PreparedStatementCallback<T> action) throws DataAccessException インターフェースからコピーされた説明:JdbcOperationsJDBC PreparedStatement で動作するコールバックアクションとして実装された JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。
- 次で指定:
- インターフェース
JdbcOperationsのexecute - パラメーター:
sql- 実行する SQLaction- アクションを指定するコールバック- 戻り値:
- アクションによって返された結果オブジェクト。ない場合は
null - 例外:
DataAccessException- 問題がある場合
query
public <T extends @Nullable ObjectSE> T query(PreparedStatementCreator psc, @Nullable PreparedStatementSetter pss, ResultSetExtractor<T> rse) throws DataAccessException PreparedStatementCreator および PreparedStatementSetter を許可する準備済みステートメントを使用した照会。他のほとんどのクエリメソッドはこのメソッドを使用しますが、アプリケーションコードは常に作成者または setter で動作します。- パラメーター:
psc- 接続を指定して PreparedStatement を作成するコールバックpss- 準備されたステートメントに値を設定する方法を知っているコールバック。これがnullの場合、SQL にはバインドパラメーターが含まれないと見なされます。rse- 結果を抽出するコールバック- 戻り値:
- ResultSetExtractor によって返される任意の結果オブジェクト
- 例外:
DataAccessException- 問題がある場合
query
public <T extends @Nullable ObjectSE> T query(PreparedStatementCreator psc, ResultSetExtractor<T> rse) throws DataAccessException インターフェースからコピーされた説明:JdbcOperationsResultSet を ResultSetExtractor で読み取り、準備済みステートメントを使用して照会します。PreparedStatementCreator は、直接実装するか、PreparedStatementCreatorFactory を介して構成できます。
- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
psc- 接続を指定して PreparedStatement を作成するコールバックrse- 結果を抽出するコールバック- 戻り値:
- ResultSetExtractor によって返される任意の結果オブジェクト
- 例外:
DataAccessException- 問題がある場合- 関連事項:
query
public <T extends @Nullable ObjectSE> T query(StringSE sql, @Nullable PreparedStatementSetter pss, ResultSetExtractor<T> rse) throws DataAccessException インターフェースからコピーされた説明:JdbcOperationsResultSet を ResultSetExtractor で読み取り、準備済みステートメントを使用して照会します。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリpss- 準備されたステートメントに値を設定する方法を知っているコールバック。これがnullの場合、SQL にはバインドパラメーターが含まれないと見なされます。バインドパラメーターがない場合でも、このコールバックを使用してフェッチサイズやその他のパフォーマンスオプションを設定できます。rse- 結果を抽出するコールバック- 戻り値:
- ResultSetExtractor によって返される任意の結果オブジェクト
- 例外:
DataAccessException- 問題がある場合
query
public <T extends @Nullable ObjectSE> T query(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes, ResultSetExtractor<T> rse) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数argTypes- 引数の SQL 型 (java.sql.Typesからの定数)rse- 結果を抽出するコールバック- 戻り値:
- ResultSetExtractor によって返される任意の結果オブジェクト
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
query
@DeprecatedSE(since="5.3") public <T extends @Nullable ObjectSE> T query(StringSE sql, @Nullable ObjectSE @Nullable [] args, ResultSetExtractor<T> rse) throws DataAccessException 使用すべきではありません。インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。rse- 結果を抽出するコールバック- 戻り値:
- ResultSetExtractor によって返される任意の結果オブジェクト
- 例外:
DataAccessException- クエリが失敗した場合
query
public <T extends @Nullable ObjectSE> T query(StringSE sql, ResultSetExtractor<T> rse, @Nullable ObjectSE @Nullable ... args) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリrse- 結果を抽出するコールバックargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。- 戻り値:
- ResultSetExtractor によって返される任意の結果オブジェクト
- 例外:
DataAccessException- クエリが失敗した場合
query
インターフェースからコピーされた説明:JdbcOperationsRowCallbackHandler で行ごとに ResultSet を読み取り、準備されたステートメントを使用して照会します。PreparedStatementCreator は、直接実装するか、PreparedStatementCreatorFactory を介して構成できます。
- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
psc- 接続を指定して PreparedStatement を作成するコールバックrch- 結果を 1 行ずつ抽出するコールバック- 例外:
DataAccessException- 問題がある場合- 関連事項:
query
public void query(StringSE sql, @Nullable PreparedStatementSetter pss, RowCallbackHandler rch) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL を照会して、SQL から準備済みステートメントを作成し、値を照会にバインドする方法を知っている PreparedStatementSetter 実装を作成し、RowCallbackHandler で行ごとに ResultSet を読み取ります。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリpss- 準備されたステートメントに値を設定する方法を知っているコールバック。これがnullの場合、SQL にはバインドパラメーターが含まれないと見なされます。バインドパラメーターがない場合でも、このコールバックを使用してフェッチサイズやその他のパフォーマンスオプションを設定できます。rch- 結果を 1 行ずつ抽出するコールバック- 例外:
DataAccessException- クエリが失敗した場合
query
public void query(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes, RowCallbackHandler rch) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数argTypes- 引数の SQL 型 (java.sql.Typesからの定数)rch- 結果を 1 行ずつ抽出するコールバック- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
query
@DeprecatedSE(since="5.3") public void query(StringSE sql, @Nullable ObjectSE @Nullable [] args, RowCallbackHandler rch) throws DataAccessException 使用すべきではありません。インターフェースからコピーされた説明:JdbcOperations指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。rch- 結果を 1 行ずつ抽出するコールバック- 例外:
DataAccessException- クエリが失敗した場合
query
public void query(StringSE sql, RowCallbackHandler rch, @Nullable ObjectSE @Nullable ... args) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリrch- 結果を 1 行ずつ抽出するコールバックargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。- 例外:
DataAccessException- クエリが失敗した場合
query
public <T extends @Nullable ObjectSE> ListSE<T> query(PreparedStatementCreator psc, RowMapper<T> rowMapper) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations準備済みステートメントを使用して照会し、RowMapper を介して各行を結果オブジェクトにマッピングします。PreparedStatementCreator は、直接実装するか、PreparedStatementCreatorFactory を介して構成できます。
- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
psc- 接続を指定して PreparedStatement を作成するコールバックrowMapper- 行ごとに 1 つのオブジェクトをマップするコールバック- 戻り値:
- マッピングされたオブジェクトを含む結果リスト
- 例外:
DataAccessException- 問題がある場合- 関連事項:
query
public <T extends @Nullable ObjectSE> ListSE<T> query(StringSE sql, @Nullable PreparedStatementSetter pss, RowMapper<T> rowMapper) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations与えられた SQL をクエリして、SQL から準備されたステートメントを作成し、RowMapper を介して各行を結果オブジェクトにマッピングして、クエリに値をバインドする方法を知っている PreparedStatementSetter 実装を作成します。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリpss- 準備されたステートメントに値を設定する方法を知っているコールバック。これがnullの場合、SQL にはバインドパラメーターが含まれないと見なされます。バインドパラメーターがない場合でも、このコールバックを使用してフェッチサイズやその他のパフォーマンスオプションを設定できます。rowMapper- 行ごとに 1 つのオブジェクトをマップするコールバック- 戻り値:
- マッピングされたオブジェクトを含む結果リスト
- 例外:
DataAccessException- クエリが失敗した場合
query
public <T extends @Nullable ObjectSE> ListSE<T> query(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes, RowMapper<T> rowMapper) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を結果オブジェクトにマッピングします。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数argTypes- 引数の SQL 型 (java.sql.Typesからの定数)rowMapper- 行ごとに 1 つのオブジェクトをマップするコールバック- 戻り値:
- マッピングされたオブジェクトを含む結果リスト
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
query
@DeprecatedSE(since="5.3") public <T extends @Nullable ObjectSE> ListSE<T> query(StringSE sql, @Nullable ObjectSE @Nullable [] args, RowMapper<T> rowMapper) throws DataAccessException 使用すべきではありません。インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を結果オブジェクトにマッピングします。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。rowMapper- 行ごとに 1 つのオブジェクトをマップするコールバック- 戻り値:
- マッピングされたオブジェクトを含む結果リスト
- 例外:
DataAccessException- クエリが失敗した場合
query
public <T extends @Nullable ObjectSE> ListSE<T> query(StringSE sql, RowMapper<T> rowMapper, @Nullable ObjectSE @Nullable ... args) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を結果オブジェクトにマッピングします。- 次で指定:
- インターフェース
JdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリrowMapper- 行ごとに 1 つのオブジェクトをマップするコールバックargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。- 戻り値:
- マッピングされたオブジェクトを含む結果リスト
- 例外:
DataAccessException- クエリが失敗した場合
queryForStream
public <T extends @Nullable ObjectSE> StreamSE<T> queryForStream(PreparedStatementCreator psc, @Nullable PreparedStatementSetter pss, RowMapper<T> rowMapper) throws DataAccessException PreparedStatementCreator および PreparedStatementSetter を許可する準備済みステートメントを使用した照会。他のほとんどのクエリメソッドはこのメソッドを使用しますが、アプリケーションコードは常に作成者または setter で動作します。- パラメーター:
psc- 接続を指定して PreparedStatement を作成するコールバックpss- 準備されたステートメントに値を設定する方法を知っているコールバック。これがnullの場合、SQL にはバインドパラメーターが含まれないと見なされます。rowMapper- 行ごとに 1 つのオブジェクトをマップするコールバック- 戻り値:
- マップされたオブジェクトを含む結果のストリーム。完全に処理されたら閉じる必要があります (たとえば、try-with-resources 句を通して)
- 例外:
DataAccessException- クエリが失敗した場合- 導入:
- 5.3
queryForStream
public <T extends @Nullable ObjectSE> StreamSE<T> queryForStream(PreparedStatementCreator psc, RowMapper<T> rowMapper) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations準備済みステートメントを使用してクエリを実行し、各行を RowMapper を介して結果オブジェクトにマッピングし、それを反復可能でクローズ可能なストリームに変換します。PreparedStatementCreator は、直接実装するか、PreparedStatementCreatorFactory を介して構成できます。
- 次で指定:
- インターフェース
JdbcOperationsのqueryForStream - パラメーター:
psc- 接続を指定して PreparedStatement を作成するコールバックrowMapper- 行ごとに 1 つのオブジェクトをマップするコールバック- 戻り値:
- マップされたオブジェクトを含む結果のストリーム。完全に処理されたら閉じる必要があります (たとえば、try-with-resources 句を通して)
- 例外:
DataAccessException- 問題がある場合- 関連事項:
queryForStream
public <T extends @Nullable ObjectSE> StreamSE<T> queryForStream(StringSE sql, @Nullable PreparedStatementSetter pss, RowMapper<T> rowMapper) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリして、SQL とクエリに値をバインドする方法を知っている PreparedStatementSetter 実装から準備済みステートメントを作成し、各行を RowMapper を介して結果オブジェクトにマッピングし、反復可能でクローズ可能なストリームに変換します。- 次で指定:
- インターフェース
JdbcOperationsのqueryForStream - パラメーター:
sql- 実行する SQL クエリpss- 準備されたステートメントに値を設定する方法を知っているコールバック。これがnullの場合、SQL にはバインドパラメーターが含まれないと見なされます。バインドパラメーターがない場合でも、このコールバックを使用してフェッチサイズやその他のパフォーマンスオプションを設定できます。rowMapper- 行ごとに 1 つのオブジェクトをマップするコールバック- 戻り値:
- マップされたオブジェクトを含む結果のストリーム。完全に処理されたら閉じる必要があります (たとえば、try-with-resources 句を通して)
- 例外:
DataAccessException- クエリが失敗した場合
queryForStream
public <T extends @Nullable ObjectSE> StreamSE<T> queryForStream(StringSE sql, RowMapper<T> rowMapper, @Nullable ObjectSE @Nullable ... args) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、各行を RowMapper を介して結果オブジェクトにマッピングし、それを反復可能でクローズ可能なストリームに変換します。- 次で指定:
- インターフェース
JdbcOperationsのqueryForStream - パラメーター:
sql- 実行する SQL クエリrowMapper- 行ごとに 1 つのオブジェクトをマップするコールバックargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。- 戻り値:
- マップされたオブジェクトを含む結果のストリーム。完全に処理されたら閉じる必要があります (たとえば、try-with-resources 句を通して)
- 例外:
DataAccessException- クエリが失敗した場合
queryForObject
public <T extends @Nullable ObjectSE> T queryForObject(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes, RowMapper<T> rowMapper) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。- 次で指定:
- インターフェース
JdbcOperationsのqueryForObject - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数 (対応する SQL 型を推測するために PreparedStatement に任せる)argTypes- 引数の SQL 型 (java.sql.Typesからの定数)rowMapper- 行ごとに 1 つのオブジェクトをマップするコールバック- 戻り値:
- 単一のマッピングされたオブジェクト (指定された
RowMapperがnullを返した場合、nullになる可能性がある) - 例外:
DataAccessException- クエリが失敗した場合
queryForObject
@DeprecatedSE(since="5.3") public <T extends @Nullable ObjectSE> T queryForObject(StringSE sql, @Nullable ObjectSE @Nullable [] args, RowMapper<T> rowMapper) throws DataAccessException 使用すべきではありません。インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。- 次で指定:
- インターフェース
JdbcOperationsのqueryForObject - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。rowMapper- 行ごとに 1 つのオブジェクトをマップするコールバック- 戻り値:
- 単一のマッピングされたオブジェクト (指定された
RowMapperがnullを返した場合、nullになる可能性がある) - 例外:
DataAccessException- クエリが失敗した場合
queryForObject
public <T extends @Nullable ObjectSE> T queryForObject(StringSE sql, RowMapper<T> rowMapper, @Nullable ObjectSE @Nullable ... args) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。- 次で指定:
- インターフェース
JdbcOperationsのqueryForObject - パラメーター:
sql- 実行する SQL クエリrowMapper- 行ごとに 1 つのオブジェクトをマップするコールバックargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。- 戻り値:
- 単一のマッピングされたオブジェクト (指定された
RowMapperがnullを返した場合、nullになる可能性がある) - 例外:
DataAccessException- クエリが失敗した場合
queryForObject
public <T> @Nullable T queryForObject(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes, ClassSE<T> requiredType) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。クエリは、単一の行 / 単一列クエリであることが期待されています。返された結果は、対応するオブジェクト型に直接マップされます。
- 次で指定:
- インターフェース
JdbcOperationsのqueryForObject - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数argTypes- 引数の SQL 型 (java.sql.Typesからの定数)requiredType- 結果オブジェクトが一致すると予想される型- 戻り値:
- 必要な型の結果オブジェクト、または SQL NULL の場合は
null - 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForObject
@DeprecatedSE(since="5.3") public <T> @Nullable T queryForObject(StringSE sql, @Nullable ObjectSE @Nullable [] args, ClassSE<T> requiredType) throws DataAccessException 使用すべきではありません。インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。クエリは、単一の行 / 単一列クエリであることが期待されています。返された結果は、対応するオブジェクト型に直接マップされます。
- 次で指定:
- インターフェース
JdbcOperationsのqueryForObject - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。requiredType- 結果オブジェクトが一致すると予想される型- 戻り値:
- 必要な型の結果オブジェクト、または SQL NULL の場合は
null - 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForObject
public <T> @Nullable T queryForObject(StringSE sql, ClassSE<T> requiredType, @Nullable ObjectSE @Nullable ... args) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。クエリは、単一の行 / 単一列クエリであることが期待されています。返された結果は、対応するオブジェクト型に直接マップされます。
- 次で指定:
- インターフェース
JdbcOperationsのqueryForObject - パラメーター:
sql- 実行する SQL クエリrequiredType- 結果オブジェクトが一致すると予想される型args- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。- 戻り値:
- 必要な型の結果オブジェクト、または SQL NULL の場合は
null - 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForMap
public MapSE<StringSE, @Nullable ObjectSE> queryForMap(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果マップを期待します。クエリは単一行クエリであることが期待されています。結果行はマップにマップされます(列名をキーとして使用して、各列に 1 つのエントリ)。
- 次で指定:
- インターフェース
JdbcOperationsのqueryForMap - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数argTypes- 引数の SQL 型 (java.sql.Typesからの定数)- 戻り値:
- 結果マップ (列名をキーとして、列ごとに 1 つのエントリ)
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForMap
public MapSE<StringSE, @Nullable ObjectSE> queryForMap(StringSE sql, @Nullable ObjectSE @Nullable ... args) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果マップを期待します。このインターフェースで定義されている
queryForMapメソッドは、ドメインモデルがない場合に適しています。それ以外の場合は、queryForObjectメソッドのいずれかを使用することを検討してください。クエリは単一行クエリであることが期待されています。結果行はマップにマップされます(列名をキーとして使用して、各列に 1 つのエントリ)。
- 次で指定:
- インターフェース
JdbcOperationsのqueryForMap - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。- 戻り値:
- 結果マップ (列名をキーとして使用して、列ごとに 1 つのエントリ)
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForList
public <T> ListSE<@Nullable T> queryForList(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes, ClassSE<T> elementType) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。結果は、結果オブジェクトのリスト(各行に 1 つのエントリ)にマップされ、各オブジェクトは指定された要素型に一致します。
- 次で指定:
- インターフェース
JdbcOperationsのqueryForList - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数argTypes- 引数の SQL 型 (java.sql.Typesからの定数)elementType- 結果リスト内の必須型の要素 (たとえば、Integer.class)- 戻り値:
- 指定された要素型に一致するオブジェクトのリスト
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForList
@DeprecatedSE(since="5.3") public <T> ListSE<@Nullable T> queryForList(StringSE sql, @Nullable ObjectSE @Nullable [] args, ClassSE<T> elementType) throws DataAccessException 使用すべきではありません。インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。結果は、結果オブジェクトのリスト(各行に 1 つのエントリ)にマップされ、各オブジェクトは指定された要素型に一致します。
- 次で指定:
- インターフェース
JdbcOperationsのqueryForList - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。elementType- 結果リスト内の必須型の要素 (たとえば、Integer.class)- 戻り値:
- 指定された要素型に一致するオブジェクトのリスト
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForList
public <T> ListSE<@Nullable T> queryForList(StringSE sql, ClassSE<T> elementType, @Nullable ObjectSE @Nullable ... args) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。結果は、結果オブジェクトのリスト(各行に 1 つのエントリ)にマップされ、各オブジェクトは指定された要素型に一致します。
- 次で指定:
- インターフェース
JdbcOperationsのqueryForList - パラメーター:
sql- 実行する SQL クエリelementType- 結果リスト内の必須型の要素 (たとえば、Integer.class)args- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。- 戻り値:
- 指定された要素型に一致するオブジェクトのリスト
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForList
public ListSE<MapSE<StringSE, @Nullable ObjectSE>> queryForList(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。結果は、マップのリスト(行ごとに 1 つのエントリ)にマップされます(列名をキーとして使用して、列ごとに 1 つのエントリ)。リスト内の各要素は、このインターフェースの
queryForMapメソッドによって返される形式になります。- 次で指定:
- インターフェース
JdbcOperationsのqueryForList - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数argTypes- 引数の SQL 型 (java.sql.Typesからの定数)- 戻り値:
- 行ごとにマップを含むリスト
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForList
public ListSE<MapSE<StringSE, @Nullable ObjectSE>> queryForList(StringSE sql, @Nullable ObjectSE @Nullable ... args) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。結果は、マップのリスト(行ごとに 1 つのエントリ)にマップされます(列名をキーとして使用して、列ごとに 1 つのエントリ)。リスト内の各要素は、このインターフェースの
queryForMapメソッドによって返される形式になります。- 次で指定:
- インターフェース
JdbcOperationsのqueryForList - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。- 戻り値:
- 行ごとにマップを含むリスト
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForRowSet
public SqlRowSet queryForRowSet(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL を照会して、SQL から準備済みステートメントを作成し、SqlRowSet を想定して、照会にバインドする引数のリストを作成します。結果は SqlRowSet にマップされ、切断された方法でデータを保持します。このラッパーは、スローされた SQLException を変換します。
デフォルトの実装では、実行時に JDBC RowSet サポートが使用可能である必要があることに注意してください。デフォルトでは、標準の JDBC
CachedRowSetが使用されます。- 次で指定:
- インターフェース
JdbcOperationsのqueryForRowSet - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数argTypes- 引数の SQL 型 (java.sql.Typesからの定数)- 戻り値:
- SqlRowSet 表現 (おそらく
javax.sql.rowset.CachedRowSetのラッパー) - 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
queryForRowSet
public SqlRowSet queryForRowSet(StringSE sql, @Nullable ObjectSE @Nullable ... args) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された SQL を照会して、SQL から準備済みステートメントを作成し、SqlRowSet を想定して、照会にバインドする引数のリストを作成します。結果は SqlRowSet にマップされ、切断された方法でデータを保持します。このラッパーは、スローされた SQLException を変換します。
デフォルトの実装では、実行時に JDBC RowSet サポートが使用可能である必要があることに注意してください。デフォルトでは、標準の JDBC
CachedRowSetが使用されます。- 次で指定:
- インターフェース
JdbcOperationsのqueryForRowSet - パラメーター:
sql- 実行する SQL クエリargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。- 戻り値:
- SqlRowSet 表現 (おそらく
javax.sql.rowset.CachedRowSetのラッパー) - 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
update
protected int update(PreparedStatementCreator psc, @Nullable PreparedStatementSetter pss) throws DataAccessException update
インターフェースからコピーされた説明:JdbcOperationsPreparedStatementCreator を使用して単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行し、SQL および必要なパラメーターを提供します。PreparedStatementCreator は、直接実装するか、PreparedStatementCreatorFactory を介して構成できます。
- 次で指定:
- インターフェース
JdbcOperationsのupdate - パラメーター:
psc- SQL および必要なパラメーターを提供するコールバック- 戻り値:
- 影響を受ける行の数
- 例外:
DataAccessException- 更新の発行に問題がある場合- 関連事項:
update
public int update(PreparedStatementCreator psc, KeyHolder generatedKeyHolder) throws DataAccessException インターフェースからコピーされた説明:JdbcOperationsPreparedStatementCreator を使用して更新ステートメントを発行し、SQL および必要なパラメーターを提供します。生成されたキーは、指定された KeyHolder に配置されます。指定された PreparedStatementCreator は、生成されたキーの抽出をアクティブ化するステートメントを作成する必要があることに注意してください(JDBC 3.0 機能)。これは、直接または PreparedStatementCreatorFactory を使用して行うことができます。
この方法では、JDBC ドライバーで生成されたキーのサポートが必要です。
- 次で指定:
- インターフェース
JdbcOperationsのupdate - パラメーター:
psc- SQL および必要なパラメーターを提供するコールバックgeneratedKeyHolder- 生成されたキーを保持する KeyHolder- 戻り値:
- 影響を受ける行の数
- 例外:
DataAccessException- 更新の発行に問題がある場合- 関連事項:
update
インターフェースからコピーされた説明:JdbcOperationsPreparedStatementSetter を使用して更新ステートメントを発行し、指定された SQL でバインドパラメーターを設定します。この方法は PreparedStatement を作成するため、PreparedStatementCreator を使用するよりも簡単です。PreparedStatementSetter はパラメーターを設定するだけです。- 次で指定:
- インターフェース
JdbcOperationsのupdate - パラメーター:
sql- バインドパラメーターを含む SQLpss- バインドパラメーターを設定するヘルパー。これがnullの場合、静的 SQL で更新を実行します。- 戻り値:
- 影響を受ける行の数
- 例外:
DataAccessException- 更新の発行に問題がある場合
update
public int update(StringSE sql, @Nullable ObjectSE @Nullable [] args, int[] argTypes) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations準備されたステートメントを介して、単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行し、指定された引数をバインドします。- 次で指定:
- インターフェース
JdbcOperationsのupdate - パラメーター:
sql- バインドパラメーターを含む SQLargs- クエリにバインドする引数argTypes- 引数の SQL 型 (java.sql.Typesからの定数)- 戻り値:
- 影響を受ける行の数
- 例外:
DataAccessException- 更新の発行に問題がある場合- 関連事項:
update
インターフェースからコピーされた説明:JdbcOperations準備されたステートメントを介して、単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行し、指定された引数をバインドします。- 次で指定:
- インターフェース
JdbcOperationsのupdate - パラメーター:
sql- バインドパラメーターを含む SQLargs- クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示すSqlParameterValueオブジェクトを含めることもできます。- 戻り値:
- 影響を受ける行の数
- 例外:
DataAccessException- 更新の発行に問題がある場合
batchUpdate
public int[] batchUpdate(PreparedStatementCreator psc, BatchPreparedStatementSetter pss, KeyHolder generatedKeyHolder) throws DataAccessException インターフェースからコピーされた説明:JdbcOperationsバッチ更新と BatchPreparedStatementSetter を使用して値を設定し、単一の PreparedStatement で複数の更新ステートメントを発行します。生成されたキーは、指定された KeyHolder に配置されます。指定された PreparedStatementCreator は、生成されたキーの抽出をアクティブ化するステートメントを作成する必要があることに注意してください(JDBC 3.0 機能)。これは、直接または PreparedStatementCreatorFactory を使用して行うことができます。
この方法では、JDBC ドライバーで生成されたキーのサポートが必要です。JDBC ドライバーがバッチ更新をサポートしていない場合は、単一の PreparedStatement での個別の更新にフォールバックします。
- 次で指定:
- インターフェース
JdbcOperationsのbatchUpdate - パラメーター:
psc- 接続を指定して PreparedStatement を作成するコールバックpss- このメソッドによって作成された PreparedStatement にパラメーターを設定するオブジェクトgeneratedKeyHolder- 生成されたキーを保持する KeyHolder- 戻り値:
- 各ステートメントの影響を受ける行数の配列 (
Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります) - 例外:
DataAccessException- 更新の発行に問題がある場合- 関連事項:
batchUpdate
インターフェースからコピーされた説明:JdbcOperations単一の PreparedStatement で複数の更新ステートメントを発行し、バッチ更新と BatchPreparedStatementSetter を使用して値を設定します。JDBC ドライバーがバッチ更新をサポートしていない場合、単一の PreparedStatement で個別の更新にフォールバックします。
- 次で指定:
- インターフェース
JdbcOperationsのbatchUpdate - パラメーター:
sql- 再利用される PreparedStatement を定義します。バッチ内のすべてのステートメントは同じ SQL を使用します。pss- このメソッドによって作成された PreparedStatement にパラメーターを設定するオブジェクト- 戻り値:
- 各ステートメントの影響を受ける行数の配列 (
Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります) - 例外:
DataAccessException- 更新の発行に問題がある場合
batchUpdate
インターフェースからコピーされた説明:JdbcOperations提供された引数のバッチで提供された SQL ステートメントを使用して、バッチを実行します。- 次で指定:
- インターフェース
JdbcOperationsのbatchUpdate - パラメーター:
sql- 実行する SQL ステートメントbatchArgs- クエリの引数のバッチを含むオブジェクト配列のリスト- 戻り値:
- バッチ内の各更新によって影響を受ける行の数を含む配列 (
Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります) - 例外:
DataAccessException- 更新の発行に問題がある場合
batchUpdate
public int[] batchUpdate(StringSE sql, ListSE<ObjectSE[]> batchArgs, int[] argTypes) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations提供された引数のバッチで提供された SQL ステートメントを使用して、バッチを実行します。- 次で指定:
- インターフェース
JdbcOperationsのbatchUpdate - パラメーター:
sql- 実行する SQL ステートメント。batchArgs- クエリの引数のバッチを含むオブジェクト配列のリストargTypes- 引数の SQL 型 (java.sql.Typesからの定数)- 戻り値:
- バッチ内の各更新によって影響を受ける行の数を含む配列 (
Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります) - 例外:
DataAccessException- 更新の発行に問題がある場合
batchUpdate
public <T> int[][] batchUpdate(StringSE sql, CollectionSE<T> batchArgs, int batchSize, ParameterizedPreparedStatementSetter<T> pss) throws DataAccessException インターフェースからコピーされた説明:JdbcOperations指定された一連の引数を含む指定された SQL ステートメントを使用して、複数のバッチを実行します。引数の値は ParameterizedPreparedStatementSetter を使用して設定されます。各バッチのサイズは 'batchSize' で示されるサイズである必要があります。- 次で指定:
- インターフェース
JdbcOperationsのbatchUpdate - パラメーター:
sql- 実行する SQL ステートメント。batchArgs- クエリの引数のバッチを含むオブジェクト配列のリストbatchSize- バッチサイズpss- 使用する ParameterizedPreparedStatementSetter- 戻り値:
- バッチごとに、バッチ内の各更新によって影響を受ける行の数を含む別の配列を含む配列 (
Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります) - 例外:
DataAccessException- 更新の発行に問題がある場合
execute
public <T extends @Nullable ObjectSE> T execute(CallableStatementCreator csc, CallableStatementCallback<T> action) throws DataAccessException インターフェースからコピーされた説明:JdbcOperationsJDBC CallableStatement で動作するコールバックアクションとして実装された JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。
- 次で指定:
- インターフェース
JdbcOperationsのexecute - パラメーター:
csc- 接続を指定して CallableStatement を作成するコールバックaction- アクションを指定するコールバック- 戻り値:
- アクションによって返された結果オブジェクト。ない場合は
null - 例外:
DataAccessException- 問題がある場合
execute
public <T extends @Nullable ObjectSE> T execute(StringSE callString, CallableStatementCallback<T> action) throws DataAccessException インターフェースからコピーされた説明:JdbcOperationsJDBC CallableStatement で動作するコールバックアクションとして実装された JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。
- 次で指定:
- インターフェース
JdbcOperationsのexecute - パラメーター:
callString- 実行する SQL 呼び出し文字列action- アクションを指定するコールバック- 戻り値:
- アクションによって返された結果オブジェクト。ない場合は
null - 例外:
DataAccessException- 問題がある場合
call
public MapSE<StringSE, @Nullable ObjectSE> call(CallableStatementCreator csc, ListSE<SqlParameter> declaredParameters) throws DataAccessException インターフェースからコピーされた説明:JdbcOperationsCallableStatementCreator を使用して SQL 呼び出しを実行し、SQL および必要なパラメーターを提供します。- 次で指定:
- インターフェース
JdbcOperationsのcall - パラメーター:
csc- SQL および必要なパラメーターを提供するコールバックdeclaredParameters- 宣言された SqlParameter オブジェクトのリスト- 戻り値:
- 抽出されたパラメーターのマップ
- 例外:
DataAccessException- 更新の発行に問題がある場合
extractReturnedResults
protected MapSE<StringSE, @Nullable ObjectSE> extractReturnedResults(CallableStatementSE cs, @Nullable ListSE<SqlParameter> updateCountParameters, @Nullable ListSE<SqlParameter> resultSetParameters, int updateCount) throws SQLExceptionSE 完了したストアドプロシージャから返された ResultSets を抽出します。- パラメーター:
cs- ストアドプロシージャの JDBC ラッパーupdateCountParameters- ストアドプロシージャの宣言された更新カウントパラメーターのパラメーターリストresultSetParameters- ストアドプロシージャの宣言された resultSet パラメーターのパラメーターリスト- 戻り値:
- 返された結果を含むマップ
- 例外:
SQLExceptionSE
extractOutputParameters
protected MapSE<StringSE, @Nullable ObjectSE> extractOutputParameters(CallableStatementSE cs, ListSE<SqlParameter> parameters) throws SQLExceptionSE 完了したストアドプロシージャから出力パラメーターを抽出します。- パラメーター:
cs- ストアドプロシージャの JDBC ラッパーparameters- ストアドプロシージャのパラメーターリスト- 戻り値:
- 返された結果を含むマップ
- 例外:
SQLExceptionSE
processResultSet
protected MapSE<@Nullable StringSE, @Nullable ObjectSE> processResultSet(@Nullable ResultSetSE rs, ResultSetSupportingSqlParameter param) throws SQLExceptionSE ストアドプロシージャから指定された ResultSet を処理します。- パラメーター:
rs- 処理する ResultSetparam- 対応するストアドプロシージャパラメーター- 戻り値:
- 返された結果を含むマップ
- 例外:
SQLExceptionSE
getColumnMapRowMapper
getSingleColumnRowMapper
createResultsMap
結果マップとして使用される Map インスタンスを作成します。resultsMapCaseInsensitiveが true に設定されている場合、LinkedCaseInsensitiveMapが作成されます。それ以外の場合は、LinkedHashMapSE が作成されます。- 戻り値:
- 結果の Map インスタンス
- 関連事項:
applyStatementSettings
指定された JDBC ステートメント(または PreparedStatement または CallableStatement)を準備し、フェッチサイズ、最大行、クエリタイムアウトなどのステートメント設定を適用します。- パラメーター:
stmt- 準備する JDBC ステートメント- 例外:
SQLExceptionSE- JDBC API によってスローされた場合- 関連事項:
newArgPreparedStatementSetter
protected PreparedStatementSetter newArgPreparedStatementSetter(@Nullable ObjectSE @Nullable [] args) 渡された引数を使用して、新しい引数ベースの PreparedStatementSetter を作成します。デフォルトでは、
ArgumentPreparedStatementSetterを作成します。このメソッドを使用すると、作成をサブクラスでオーバーライドできます。- パラメーター:
args- 引数を持つオブジェクト配列- 戻り値:
- 使用する新しい PreparedStatementSetter
newArgTypePreparedStatementSetter
protected PreparedStatementSetter newArgTypePreparedStatementSetter(@Nullable ObjectSE @Nullable [] args, int[] argTypes) 渡された引数と型を使用して、新しい引数型ベースの PreparedStatementSetter を作成します。デフォルトでは、
ArgumentTypePreparedStatementSetterを作成します。このメソッドを使用すると、作成をサブクラスでオーバーライドできます。- パラメーター:
args- 引数を持つオブジェクト配列argTypes- 関連する引数の SQLType の int 配列- 戻り値:
- 使用する新しい PreparedStatementSetter
handleWarnings
指定されたステートメントの実行からプライマリSQLExceptionを伝播する前に、警告を処理します。通常の
handleWarnings(Statement)を呼び出しますが、代わりにSQLWarningSE を主例外に チェーンするためにSQLWarningExceptionをキャッチします。- パラメーター:
stmt- 現在の JDBC ステートメントex- ステートメントの実行が失敗した後の主な例外- 導入:
- 5.3.29
- 関連事項:
handleWarnings
指定された JDBC ステートメントに警告がある場合は、それを処理します。警告を無視していない場合は
SQLWarningExceptionをスローし、そうでない場合はデバッグレベルで警告をログに記録します。- パラメーター:
stmt- 現在の JDBC ステートメント- 例外:
SQLExceptionSE- 警告の取得に失敗した場合SQLWarningException- 具体的な警告を発するために (警告を無視しない場合)- 関連事項:
handleWarnings
実際の警告が発生した場合は、SQLWarningExceptionをスローします。- パラメーター:
warning- 現在のステートメントの警告オブジェクト。nullの場合があります。その場合、このメソッドは何も実行しません。- 例外:
SQLWarningException- 発生する実際の警告の場合
translateException
protected DataAccessException translateException(StringSE task, @Nullable StringSE sql, SQLExceptionSE ex) 指定されたSQLExceptionSE を汎用DataAccessExceptionに変換します。- パラメーター:
task- 試行されているタスクを説明する読み取り可能なテキストsql- 問題を引き起こした SQL クエリまたは更新 (nullの場合があります)ex- 問題のあるSQLException- 戻り値:
SQLExceptionをラップする DataAccessException (非null)- 導入:
- 5.0
- 関連事項: