クラス NamedParameterJdbcTemplate
- 実装されているすべてのインターフェース:
NamedParameterJdbcOperations
このクラスは、名前付きパラメーターから JDBC スタイル "?" への置換が完了すると、ラップされた JdbcTemplate に委譲します。プレースホルダーは実行時に行われます。また、値の ListSE を適切な数のプレースホルダーに拡張できます。
このテンプレートクラスのインスタンスは、一度設定されるとスレッドセーフになります。基盤となる JdbcTemplate は、従来の JdbcTemplate メソッドに簡単にアクセスできるように公開されています。
注: 6.1 では、JdbcClient の形式で利用可能な統合 JDBC アクセスファサードがあります。JdbcClient は、インデックス付きパラメーターまたは名前付きパラメーターを柔軟に使用して、一般的な JDBC クエリ / 更新に流れるような API スタイルを提供します。実際の実行は JdbcTemplate/NamedParameterJdbcTemplate に委譲されます。
- 導入:
- 2.0
- 作成者:
- Thomas Risberg, Juergen Hoeller
- 関連事項:
フィールドのサマリー
フィールドコンストラクターの概要
コンストラクターコンストラクター説明NamedParameterJdbcTemplate(DataSourceSE dataSource) 指定されたDataSourceSE の新しい NamedParameterJdbcTemplate を作成します。NamedParameterJdbcTemplate(JdbcOperations classicJdbcTemplate) 指定されたクラシック SpringJdbcTemplateの新しい NamedParameterJdbcTemplate を作成します。NamedParameterJdbcTemplate(NamedParameterJdbcTemplate original, JdbcTemplate classicJdbcTemplate) 派生した NamedParameterJdbcTemplate のコピーコンストラクター。方法の概要
修飾子と型メソッド説明int[]batchUpdate(StringSE sql, MapSE<StringSE, ?>[] batchValues) 提供された引数のバッチで提供された SQL ステートメントを使用して、バッチを実行します。int[]batchUpdate(StringSE sql, SqlParameterSource[] batchArgs) 提供された引数のバッチで提供された SQL ステートメントを使用して、バッチを実行します。int[]batchUpdate(StringSE sql, SqlParameterSource[] batchArgs, KeyHolder generatedKeyHolder) 指定された SQL ステートメントと指定された引数のバッチを使用してバッチを実行し、生成されたキーを返します。int[]batchUpdate(StringSE sql, SqlParameterSource[] batchArgs, KeyHolder generatedKeyHolder, StringSE @Nullable [] keyColumnNames) 指定された SQL ステートメントと指定された引数のバッチを使用してバッチを実行し、生成されたキーを返します。execute(StringSE sql, MapSE<StringSE, ?> paramMap, PreparedStatementCallback<T> action) JDBC PreparedStatement で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。execute(StringSE sql, SqlParameterSource paramSource, PreparedStatementCallback<T> action) JDBC PreparedStatement で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。execute(StringSE sql, PreparedStatementCallback<T> action) JDBC PreparedStatement で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。intこのテンプレートの SQL キャッシュのエントリの最大数を返します。あまり一般的ではないメソッドの呼び出しを可能にするために、典型的な Spring JdbcTemplate 操作を公開します。特に他のJdbcTemplateコンシューマーに渡すために、可能であればクラシック SpringJdbcTemplate自体を公開します。protected ParsedSqlgetParsedSql(StringSE sql) 指定された SQL ステートメントの解析された表現を取得します。protected PreparedStatementCreatorgetPreparedStatementCreator(StringSE sql, SqlParameterSource paramSource) 指定された SQL および名前付きパラメーターに基づいてPreparedStatementCreatorを作成します。protected PreparedStatementCreatorgetPreparedStatementCreator(StringSE sql, SqlParameterSource paramSource, @Nullable ConsumerSE<PreparedStatementCreatorFactory> customizer) 指定された SQL および名前付きパラメーターに基づいてPreparedStatementCreatorを作成します。protected PreparedStatementCreatorFactorygetPreparedStatementCreatorFactory(ParsedSql parsedSql, SqlParameterSource paramSource) 指定された SQL および名前付きパラメーターに基づいてPreparedStatementCreatorFactoryを作成します。query(StringSE sql, MapSE<StringSE, ?> paramMap, ResultSetExtractor<T> rse) 指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。voidquery(StringSE sql, MapSE<StringSE, ?> paramMap, RowCallbackHandler rch) 指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を Java オブジェクトにマッピングします。query(StringSE sql, SqlParameterSource paramSource, ResultSetExtractor<T> rse) 指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。voidquery(StringSE sql, SqlParameterSource paramSource, RowCallbackHandler rch) 指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。query(StringSE sql, SqlParameterSource paramSource, RowMapper<T> rowMapper) 指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を Java オブジェクトにマッピングします。query(StringSE sql, ResultSetExtractor<T> rse) 指定された SQL を照会して、ResultSet を ResultSetExtractor で読み取り、SQL から準備済みステートメントを作成します。voidquery(StringSE sql, RowCallbackHandler rch) 指定された SQL を照会して、RowCallbackHandler を使用して行ごとに ResultSet を読み取り、SQL から準備済みステートメントを作成します。<T> ListSE<T> 指定された SQL を照会して、SQL から準備済みステートメントを作成し、RowMapper を介して各行を Java オブジェクトにマッピングします。queryForList(StringSE sql, MapSE<StringSE, ?> paramMap) 指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。queryForList(StringSE sql, MapSE<StringSE, ?> paramMap, ClassSE<T> elementType) 指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。queryForList(StringSE sql, SqlParameterSource paramSource) 指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。queryForList(StringSE sql, SqlParameterSource paramSource, ClassSE<T> elementType) 指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。queryForMap(StringSE sql, MapSE<StringSE, ?> paramMap) 指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果マップを期待します。queryForMap(StringSE sql, SqlParameterSource paramSource) 指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果マップを期待します。<T> @Nullable TqueryForObject(StringSE sql, MapSE<StringSE, ?> paramMap, ClassSE<T> requiredType) 指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。queryForObject(StringSE sql, MapSE<StringSE, ?> paramMap, RowMapper<T> rowMapper) 指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を Java オブジェクトにマッピングします。<T> @Nullable TqueryForObject(StringSE sql, SqlParameterSource paramSource, ClassSE<T> requiredType) 指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。queryForObject(StringSE sql, SqlParameterSource paramSource, RowMapper<T> rowMapper) 指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を Java オブジェクトにマッピングします。queryForRowSet(StringSE sql, MapSE<StringSE, ?> paramMap) 指定された SQL を照会して、SQL から準備済みステートメントを作成し、SqlRowSet を想定して、照会にバインドする引数のリストを作成します。queryForRowSet(StringSE sql, SqlParameterSource paramSource) 指定された SQL を照会して、SQL から準備済みステートメントを作成し、SqlRowSet を想定して、照会にバインドする引数のリストを作成します。queryForStream(StringSE sql, MapSE<StringSE, ?> paramMap, RowMapper<T> rowMapper) 指定された SQL をクエリして、SQL とクエリにバインドする引数のリストから準備済みステートメントを作成し、各行を RowMapper を介して Java オブジェクトにマッピングし、反復可能でクローズ可能なストリームに変換します。queryForStream(StringSE sql, SqlParameterSource paramSource, RowMapper<T> rowMapper) 指定された SQL をクエリして、SQL とクエリにバインドする引数のリストから準備済みステートメントを作成し、各行を RowMapper を介して Java オブジェクトにマッピングし、反復可能でクローズ可能なストリームに変換します。voidsetCacheLimit(int cacheLimit) このテンプレートの SQL キャッシュのエントリの最大数を指定します。int準備されたステートメントを介して更新を発行し、指定された引数をバインドします。intupdate(StringSE sql, SqlParameterSource paramSource) 準備されたステートメントを介して更新を発行し、指定された引数をバインドします。intupdate(StringSE sql, SqlParameterSource paramSource, KeyHolder generatedKeyHolder) 準備されたステートメントを介して更新を発行し、指定された引数をバインドし、生成されたキーを返します。intupdate(StringSE sql, SqlParameterSource paramSource, KeyHolder generatedKeyHolder, StringSE @Nullable [] keyColumnNames) 準備されたステートメントを介して更新を発行し、指定された引数をバインドし、生成されたキーを返します。
フィールドの詳細
DEFAULT_CACHE_LIMIT
public static final int DEFAULT_CACHE_LIMITこのテンプレートの SQL キャッシュのエントリのデフォルトの最大数: 256。- 関連事項:
コンストラクターの詳細
NamedParameterJdbcTemplate
指定されたDataSourceSE の新しい NamedParameterJdbcTemplate を作成します。クラシック Spring
JdbcTemplateを作成してラップします。- パラメーター:
dataSource- アクセスする JDBC DataSource
NamedParameterJdbcTemplate
指定されたクラシック SpringJdbcTemplateの新しい NamedParameterJdbcTemplate を作成します。- パラメーター:
classicJdbcTemplate- ラップするクラシック Spring JdbcTemplate
NamedParameterJdbcTemplate
public NamedParameterJdbcTemplate(NamedParameterJdbcTemplate original, JdbcTemplate classicJdbcTemplate) 派生した NamedParameterJdbcTemplate のコピーコンストラクター。- パラメーター:
original- コピー元の NamedParameterJdbcTemplateclassicJdbcTemplate- 実際に使用する JdbcTemplate デリゲート- 導入:
- 7.0
メソッドの詳細
getJdbcOperations
あまり一般的ではないメソッドの呼び出しを可能にするために、典型的な Spring JdbcTemplate 操作を公開します。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのgetJdbcOperations
getJdbcTemplate
特に他のJdbcTemplateコンシューマーに渡すために、可能であればクラシック SpringJdbcTemplate自体を公開します。当面の目的に十分であれば、このバリアントよりも
getJdbcOperations()をお勧めします。- 導入:
- 5.0.3
setCacheLimit
public void setCacheLimit(int cacheLimit) このテンプレートの SQL キャッシュのエントリの最大数を指定します。デフォルトは 256. 0 で、キャッシュがないことを示し、常に各ステートメントを解析します。getCacheLimit
public int getCacheLimit()このテンプレートの SQL キャッシュのエントリの最大数を返します。execute
public <T extends @Nullable ObjectSE> T execute(StringSE sql, SqlParameterSource paramSource, PreparedStatementCallback<T> action) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperationsJDBC PreparedStatement で動作するコールバックアクションとして実装された JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのexecute - パラメーター:
sql- 実行する SQLparamSource- クエリにバインドする引数のコンテナーaction- アクションを指定するコールバックオブジェクト- 戻り値:
- アクションによって返される結果オブジェクト、または
null - 例外:
DataAccessException- 問題がある場合
execute
public <T extends @Nullable ObjectSE> T execute(StringSE sql, MapSE<StringSE, ?> paramMap, PreparedStatementCallback<T> action) throws DataAccessExceptionインターフェースからコピーされた説明:NamedParameterJdbcOperationsJDBC PreparedStatement で動作するコールバックアクションとして実装された JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのexecute - パラメーター:
sql- 実行する SQLparamMap- クエリにバインドするパラメーターのマップ (対応する SQL 型を推測するために PreparedStatement に任せる)action- アクションを指定するコールバックオブジェクト- 戻り値:
- アクションによって返される結果オブジェクト、または
null - 例外:
DataAccessException- 問題がある場合
execute
public <T extends @Nullable ObjectSE> T execute(StringSE sql, PreparedStatementCallback<T> action) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperationsJDBC PreparedStatement で動作するコールバックアクションとして実装された JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのexecute - パラメーター:
sql- 実行する SQLaction- アクションを指定するコールバックオブジェクト- 戻り値:
- アクションによって返される結果オブジェクト、または
null - 例外:
DataAccessException- 問題がある場合
query
public <T extends @Nullable ObjectSE> T query(StringSE sql, SqlParameterSource paramSource, ResultSetExtractor<T> rse) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリparamSource- クエリにバインドする引数のコンテナーrse- 結果を抽出するオブジェクト- 戻り値:
- ResultSetExtractor によって返される任意の結果オブジェクト
- 例外:
DataAccessException- クエリが失敗した場合
query
public <T extends @Nullable ObjectSE> T query(StringSE sql, MapSE<StringSE, ?> paramMap, ResultSetExtractor<T> rse) throws DataAccessExceptionインターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリparamMap- クエリにバインドするパラメーターのマップ (対応する SQL 型を推測するために PreparedStatement に任せる)rse- 結果を抽出するオブジェクト- 戻り値:
- ResultSetExtractor によって返される任意の結果オブジェクト
- 例外:
DataAccessException- クエリが失敗した場合
query
public <T extends @Nullable ObjectSE> T query(StringSE sql, ResultSetExtractor<T> rse) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL を照会して、ResultSet を ResultSetExtractor で読み取り、SQL から準備済みステートメントを作成します。メモ: 同じ署名を持つ JdbcOperations メソッドとは対照的に、このクエリバリアントは常に PreparedStatement を使用します。これは、空のパラメーター Map を使用したクエリ呼び出しと実質的に同等です。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリrse- 結果を抽出するオブジェクト- 戻り値:
- ResultSetExtractor によって返される任意の結果オブジェクト
- 例外:
DataAccessException- クエリが失敗した場合
query
public void query(StringSE sql, SqlParameterSource paramSource, RowCallbackHandler rch) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリparamSource- クエリにバインドする引数のコンテナーrch- 結果を 1 行ずつ抽出するオブジェクト- 例外:
DataAccessException- クエリが失敗した場合
query
public void query(StringSE sql, MapSE<StringSE, ?> paramMap, RowCallbackHandler rch) throws DataAccessExceptionインターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリparamMap- クエリにバインドするパラメーターのマップ (対応する SQL 型を推測するために PreparedStatement に任せる)rch- 結果を 1 行ずつ抽出するオブジェクト- 例外:
DataAccessException- クエリが失敗した場合
query
インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL を照会して、RowCallbackHandler を使用して行ごとに ResultSet を読み取り、SQL から準備済みステートメントを作成します。メモ: 同じ署名を持つ JdbcOperations メソッドとは対照的に、このクエリバリアントは常に PreparedStatement を使用します。これは、空のパラメーター Map を使用したクエリ呼び出しと実質的に同等です。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリrch- 結果を 1 行ずつ抽出するオブジェクト- 例外:
DataAccessException- クエリが失敗した場合
query
public <T extends @Nullable ObjectSE> ListSE<T> query(StringSE sql, SqlParameterSource paramSource, RowMapper<T> rowMapper) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を Java オブジェクトにマッピングします。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリparamSource- クエリにバインドする引数のコンテナーrowMapper- 行ごとに 1 つのオブジェクトをマップするオブジェクト- 戻り値:
- マッピングされたオブジェクトを含む結果リスト
- 例外:
DataAccessException- クエリが失敗した場合
query
public <T extends @Nullable ObjectSE> ListSE<T> query(StringSE sql, MapSE<StringSE, ?> paramMap, RowMapper<T> rowMapper) throws DataAccessExceptionインターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を Java オブジェクトにマッピングします。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリparamMap- クエリにバインドするパラメーターのマップ (対応する SQL 型を推測するために PreparedStatement に任せる)rowMapper- 行ごとに 1 つのオブジェクトをマップするオブジェクト- 戻り値:
- マッピングされたオブジェクトを含む結果リスト
- 例外:
DataAccessException- クエリが失敗した場合
query
インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL を照会して、SQL から準備済みステートメントを作成し、RowMapper を介して各行を Java オブジェクトにマッピングします。メモ: 同じ署名を持つ JdbcOperations メソッドとは対照的に、このクエリバリアントは常に PreparedStatement を使用します。これは、空のパラメーター Map を使用したクエリ呼び出しと実質的に同等です。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのquery - パラメーター:
sql- 実行する SQL クエリrowMapper- 行ごとに 1 つのオブジェクトをマップするオブジェクト- 戻り値:
- マッピングされたオブジェクトを含む結果リスト
- 例外:
DataAccessException- クエリが失敗した場合
queryForStream
public <T extends @Nullable ObjectSE> StreamSE<T> queryForStream(StringSE sql, SqlParameterSource paramSource, RowMapper<T> rowMapper) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリして、SQL とクエリにバインドする引数のリストから準備済みステートメントを作成し、各行を RowMapper を介して Java オブジェクトにマッピングし、反復可能でクローズ可能なストリームに変換します。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForStream - パラメーター:
sql- 実行する SQL クエリparamSource- クエリにバインドする引数のコンテナーrowMapper- 行ごとに 1 つのオブジェクトをマップするオブジェクト- 戻り値:
- マップされたオブジェクトを含む結果のストリーム。完全に処理されたら閉じる必要があります (たとえば、try-with-resources 句を通して)
- 例外:
DataAccessException- クエリが失敗した場合
queryForStream
public <T extends @Nullable ObjectSE> StreamSE<T> queryForStream(StringSE sql, MapSE<StringSE, ?> paramMap, RowMapper<T> rowMapper) throws DataAccessExceptionインターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリして、SQL とクエリにバインドする引数のリストから準備済みステートメントを作成し、各行を RowMapper を介して Java オブジェクトにマッピングし、反復可能でクローズ可能なストリームに変換します。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForStream - パラメーター:
sql- 実行する SQL クエリparamMap- クエリにバインドするパラメーターのマップ (対応する SQL 型を推測するために PreparedStatement に任せる)rowMapper- 行ごとに 1 つのオブジェクトをマップするオブジェクト- 戻り値:
- マップされたオブジェクトを含む結果のストリーム。完全に処理されたら閉じる必要があります (たとえば、try-with-resources 句を通して)
- 例外:
DataAccessException- クエリが失敗した場合
queryForObject
public <T extends @Nullable ObjectSE> T queryForObject(StringSE sql, SqlParameterSource paramSource, RowMapper<T> rowMapper) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を Java オブジェクトにマッピングします。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForObject - パラメーター:
sql- 実行する SQL クエリparamSource- クエリにバインドする引数のコンテナーrowMapper- 行ごとに 1 つのオブジェクトをマップするオブジェクト- 戻り値:
- 単一のマッピングされたオブジェクト (指定された
RowMapperがnullを返した場合、nullになる可能性がある) - 例外:
DataAccessException- クエリが失敗した場合
queryForObject
public <T extends @Nullable ObjectSE> T queryForObject(StringSE sql, MapSE<StringSE, ?> paramMap, RowMapper<T> rowMapper) throws DataAccessExceptionインターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を Java オブジェクトにマッピングします。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForObject - パラメーター:
sql- 実行する SQL クエリparamMap- クエリにバインドするパラメーターのマップ (対応する SQL 型を推測するために PreparedStatement に任せる)rowMapper- 行ごとに 1 つのオブジェクトをマップするオブジェクト- 戻り値:
- 単一のマッピングされたオブジェクト (指定された
RowMapperがnullを返した場合、nullになる可能性がある) - 例外:
DataAccessException- クエリが失敗した場合
queryForObject
public <T> @Nullable T queryForObject(StringSE sql, SqlParameterSource paramSource, ClassSE<T> requiredType) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。クエリは、単一の行 / 単一列クエリであることが期待されています。返された結果は、対応するオブジェクト型に直接マップされます。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForObject - パラメーター:
sql- 実行する SQL クエリparamSource- クエリにバインドする引数のコンテナーrequiredType- 結果オブジェクトが一致すると予想される型- 戻り値:
- 必要な型の結果オブジェクト、または SQL NULL の場合は
null - 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForObject
public <T> @Nullable T queryForObject(StringSE sql, MapSE<StringSE, ?> paramMap, ClassSE<T> requiredType) throws DataAccessExceptionインターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。クエリは、単一の行 / 単一列クエリであることが期待されています。返された結果は、対応するオブジェクト型に直接マップされます。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForObject - パラメーター:
sql- 実行する SQL クエリparamMap- クエリにバインドするパラメーターのマップ (対応する SQL 型を推測するために PreparedStatement に任せる)requiredType- 結果オブジェクトが一致すると予想される型- 戻り値:
- 必要な型の結果オブジェクト、または SQL NULL の場合は
null - 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForMap
public MapSE<StringSE, @Nullable ObjectSE> queryForMap(StringSE sql, SqlParameterSource paramSource) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果マップを期待します。クエリは単一行クエリであることが期待されています。結果行はマップにマップされます(列名をキーとして使用して、各列に 1 つのエントリ)。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForMap - パラメーター:
sql- 実行する SQL クエリparamSource- クエリにバインドする引数のコンテナー- 戻り値:
- 結果マップ (列名をキーとして使用して、列ごとに 1 つのエントリ)
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForMap
public MapSE<StringSE, @Nullable ObjectSE> queryForMap(StringSE sql, MapSE<StringSE, ?> paramMap) throws DataAccessExceptionインターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果マップを期待します。このインターフェースで定義される queryForMap() メソッドは、ドメインモデルがない場合に適しています。それ以外の場合は、queryForObject() メソッドのいずれかを使用することを検討してください。クエリは単一行クエリであることが期待されています。結果行はマップにマップされます(列名をキーとして使用して、各列に 1 つのエントリ)。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForMap - パラメーター:
sql- 実行する SQL クエリparamMap- クエリにバインドするパラメーターのマップ (対応する SQL 型を推測するために PreparedStatement に任せる)- 戻り値:
- 結果マップ (列名をキーとして使用して、列ごとに 1 つのエントリ)
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForList
public <T> ListSE<@Nullable T> queryForList(StringSE sql, SqlParameterSource paramSource, ClassSE<T> elementType) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。結果は、結果オブジェクトのリスト(各行に 1 つのエントリ)にマップされ、各オブジェクトは指定された要素型に一致します。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForList - パラメーター:
sql- 実行する SQL クエリparamSource- クエリにバインドする引数のコンテナーelementType- 結果リスト内の必須型の要素 (たとえば、Integer.class)- 戻り値:
- 指定された要素型に一致するオブジェクトのリスト
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForList
public <T> ListSE<@Nullable T> queryForList(StringSE sql, MapSE<StringSE, ?> paramMap, ClassSE<T> elementType) throws DataAccessExceptionインターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。結果は、結果オブジェクトのリスト(各行に 1 つのエントリ)にマップされ、各オブジェクトは指定された要素型に一致します。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForList - パラメーター:
sql- 実行する SQL クエリparamMap- クエリにバインドするパラメーターのマップ (対応する SQL 型を推測するために PreparedStatement に任せる)elementType- 結果リスト内の必須型の要素 (たとえば、Integer.class)- 戻り値:
- 指定された要素型に一致するオブジェクトのリスト
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForList
public ListSE<MapSE<StringSE, @Nullable ObjectSE>> queryForList(StringSE sql, SqlParameterSource paramSource) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。結果は、マップのリスト(行ごとに 1 つのエントリ)にマップされます(列名をキーとして使用して、列ごとに 1 つのエントリ)。リスト内の各要素は、このインターフェースの
queryForMapメソッドによって返される形式になります。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForList - パラメーター:
sql- 実行する SQL クエリparamSource- クエリにバインドする引数のコンテナー- 戻り値:
- 行ごとにマップを含むリスト
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForList
public ListSE<MapSE<StringSE, @Nullable ObjectSE>> queryForList(StringSE sql, MapSE<StringSE, ?> paramMap) throws DataAccessExceptionインターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。結果は、マップのリスト(行ごとに 1 つのエントリ)にマップされます(列名をキーとして使用して、列ごとに 1 つのエントリ)。リスト内の各要素は、このインターフェースの
queryForMapメソッドによって返される形式になります。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForList - パラメーター:
sql- 実行する SQL クエリparamMap- クエリにバインドするパラメーターのマップ (対応する SQL 型を推測するために PreparedStatement に任せる)- 戻り値:
- 行ごとにマップを含むリスト
- 例外:
DataAccessException- クエリが失敗した場合- 関連事項:
queryForRowSet
public SqlRowSet queryForRowSet(StringSE sql, SqlParameterSource paramSource) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL を照会して、SQL から準備済みステートメントを作成し、SqlRowSet を想定して、照会にバインドする引数のリストを作成します。結果は SqlRowSet にマップされ、切断された方法でデータを保持します。このラッパーは、スローされた SQLException を変換します。
デフォルトの実装では、実行時に JDBC RowSet サポートが使用可能である必要があることに注意してください。デフォルトでは、標準の JDBC
CachedRowSetが使用されます。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForRowSet - パラメーター:
sql- 実行する SQL クエリparamSource- クエリにバインドする引数のコンテナー- 戻り値:
- SqlRowSet 表現 (おそらく
javax.sql.rowset.CachedRowSetのラッパー) - 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
queryForRowSet
public SqlRowSet queryForRowSet(StringSE sql, MapSE<StringSE, ?> paramMap) throws DataAccessExceptionインターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL を照会して、SQL から準備済みステートメントを作成し、SqlRowSet を想定して、照会にバインドする引数のリストを作成します。結果は SqlRowSet にマップされ、切断された方法でデータを保持します。このラッパーは、スローされた SQLException を変換します。
デフォルトの実装では、実行時に JDBC RowSet サポートが使用可能である必要があることに注意してください。デフォルトでは、標準の JDBC
CachedRowSetが使用されます。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのqueryForRowSet - パラメーター:
sql- 実行する SQL クエリparamMap- クエリにバインドするパラメーターのマップ (対応する SQL 型を推測するために PreparedStatement に任せる)- 戻り値:
- SqlRowSet 表現 (おそらく
javax.sql.rowset.CachedRowSetのラッパー) - 例外:
DataAccessException- クエリの実行に問題がある場合- 関連事項:
update
インターフェースからコピーされた説明:NamedParameterJdbcOperations準備されたステートメントを介して更新を発行し、指定された引数をバインドします。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのupdate - パラメーター:
sql- 名前付きパラメーターを含む SQLparamSource- クエリにバインドする引数と SQL 型のコンテナー- 戻り値:
- 影響を受ける行の数
- 例外:
DataAccessException- 更新の発行に問題がある場合
update
インターフェースからコピーされた説明:NamedParameterJdbcOperations準備されたステートメントを介して更新を発行し、指定された引数をバインドします。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのupdate - パラメーター:
sql- 名前付きパラメーターを含む SQLparamMap- クエリにバインドするパラメーターのマップ (対応する SQL 型を推測するために PreparedStatement に任せる)- 戻り値:
- 影響を受ける行の数
- 例外:
DataAccessException- 更新の発行に問題がある場合
update
public int update(StringSE sql, SqlParameterSource paramSource, KeyHolder generatedKeyHolder) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations準備されたステートメントを介して更新を発行し、指定された引数をバインドし、生成されたキーを返します。この方法では、JDBC ドライバーで生成されたキーのサポートが必要です。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのupdate - パラメーター:
sql- 名前付きパラメーターを含む SQLparamSource- クエリにバインドする引数と SQL 型のコンテナーgeneratedKeyHolder- 生成されたキーを保持するKeyHolder- 戻り値:
- 影響を受ける行の数
- 例外:
DataAccessException- 更新の発行に問題がある場合- 関連事項:
update
public int update(StringSE sql, SqlParameterSource paramSource, KeyHolder generatedKeyHolder, StringSE @Nullable [] keyColumnNames) throws DataAccessException インターフェースからコピーされた説明:NamedParameterJdbcOperations準備されたステートメントを介して更新を発行し、指定された引数をバインドし、生成されたキーを返します。この方法では、JDBC ドライバーで生成されたキーのサポートが必要です。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのupdate - パラメーター:
sql- 名前付きパラメーターを含む SQLparamSource- クエリにバインドする引数と SQL 型のコンテナーgeneratedKeyHolder- 生成されたキーを保持するKeyHolderkeyColumnNames- キーが生成される列の名前- 戻り値:
- 影響を受ける行の数
- 例外:
DataAccessException- 更新の発行に問題がある場合- 関連事項:
batchUpdate
インターフェースからコピーされた説明:NamedParameterJdbcOperations提供された引数のバッチで提供された SQL ステートメントを使用して、バッチを実行します。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのbatchUpdate - パラメーター:
sql- 実行する SQL ステートメントbatchArgs- クエリの引数のバッチを含むSqlParameterSourceの配列- 戻り値:
- バッチ内の各更新によって影響を受ける行の数を含む配列 (
Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります)
batchUpdate
インターフェースからコピーされた説明:NamedParameterJdbcOperations提供された引数のバッチで提供された SQL ステートメントを使用して、バッチを実行します。- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのbatchUpdate - パラメーター:
sql- 実行する SQL ステートメントbatchValues- クエリの引数のバッチを含むマップの配列- 戻り値:
- バッチ内の各更新によって影響を受ける行の数を含む配列 (
Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります)
batchUpdate
public int[] batchUpdate(StringSE sql, SqlParameterSource[] batchArgs, KeyHolder generatedKeyHolder) インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL ステートメントと指定された引数のバッチを使用してバッチを実行し、生成されたキーを返します。この方法では、JDBC ドライバーで生成されたキーのサポートが必要です。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのbatchUpdate - パラメーター:
sql- 実行する SQL ステートメントbatchArgs- クエリの引数のバッチを含むSqlParameterSourceの配列generatedKeyHolder- 生成されたキーを保持するKeyHolder- 戻り値:
- バッチ内の各更新によって影響を受ける行の数を含む配列 (
Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります) - 関連事項:
batchUpdate
public int[] batchUpdate(StringSE sql, SqlParameterSource[] batchArgs, KeyHolder generatedKeyHolder, StringSE @Nullable [] keyColumnNames) インターフェースからコピーされた説明:NamedParameterJdbcOperations指定された SQL ステートメントと指定された引数のバッチを使用してバッチを実行し、生成されたキーを返します。この方法では、JDBC ドライバーで生成されたキーのサポートが必要です。
- 次で指定:
- インターフェース
NamedParameterJdbcOperationsのbatchUpdate - パラメーター:
sql- 実行する SQL ステートメントbatchArgs- クエリの引数のバッチを含むSqlParameterSourceの配列generatedKeyHolder- 生成されたキーを保持するKeyHolderkeyColumnNames- キーが生成される列の名前- 戻り値:
- バッチ内の各更新によって影響を受ける行の数を含む配列 (
Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります) - 関連事項:
getPreparedStatementCreator
protected PreparedStatementCreator getPreparedStatementCreator(StringSE sql, SqlParameterSource paramSource) 指定された SQL および名前付きパラメーターに基づいてPreparedStatementCreatorを作成します。メモ: すべての
queryバリアントから直接呼び出されます。一般的なgetPreparedStatementCreator(String, SqlParameterSource, Consumer)メソッドへのデリゲート。- パラメーター:
sql- 実行する SQL ステートメントparamSource- バインドする引数のコンテナー- 戻り値:
- 対応する
PreparedStatementCreator - 関連事項:
getPreparedStatementCreator
protected PreparedStatementCreator getPreparedStatementCreator(StringSE sql, SqlParameterSource paramSource, @Nullable ConsumerSE<PreparedStatementCreatorFactory> customizer) 指定された SQL および名前付きパラメーターに基づいてPreparedStatementCreatorを作成します。メモ: 生成されたキー処理で
updateバリアントに使用され、getPreparedStatementCreator(String, SqlParameterSource)から委譲されます。- パラメーター:
sql- 実行する SQL ステートメントparamSource- バインドする引数のコンテナーcustomizer- 実際のnewPreparedStatementCreator呼び出しの前に適用される、使用中のPreparedStatementCreatorFactoryにさらにプロパティを設定するためのコールバック- 戻り値:
- 対応する
PreparedStatementCreator - 導入:
- 5.0.5
- 関連事項:
getParsedSql
getPreparedStatementCreatorFactory
protected PreparedStatementCreatorFactory getPreparedStatementCreatorFactory(ParsedSql parsedSql, SqlParameterSource paramSource) 指定された SQL および名前付きパラメーターに基づいてPreparedStatementCreatorFactoryを作成します。- パラメーター:
parsedSql- 指定された SQL ステートメントの解析された表現paramSource- バインドする引数のコンテナー- 戻り値:
- 対応する
PreparedStatementCreatorFactory - 導入:
- 5.1.3
- 関連事項: