インターフェース ConnectionCallback<T>
- 型パラメーター:
T
- 結果の型
- 関数インターフェース:
- これは関数インターフェースであるため、ラムダ式またはメソッド参照の割り当てターゲットとして使用できます。
JDBC 接続で動作するコードの汎用コールバックインターフェース。任意の型と数のステートメントを使用して、単一の接続で任意の数の操作を実行できます。
これは、接続が機能することを期待して SQLException をスローする既存のデータアクセスコードに委譲する場合に特に便利です。新しく記述されたコードの場合、query
または update
バリアントなど、JdbcTemplate のより具体的な操作を使用することを強くお勧めします。
メソッドのサマリー
メソッドの詳細
doInConnection
アクティブな JDBC 接続を使用してJdbcTemplate.execute
によって呼び出されます。接続のアクティブ化またはクローズ、またはトランザクションの処理について気にする必要はありません。スレッドにバインドされた JDBC トランザクション(DataSourceTransactionManager によって開始される)なしで呼び出された場合、コードはトランザクションセマンティクスを使用して JDBC 接続で実行されるだけです。JdbcTemplate が JTA 対応の DataSource を使用するように構成されている場合、JDBC 接続、つまり JTA トランザクションがアクティブであれば、コールバックコードはトランザクションになります。
コールバック内で作成された結果オブジェクト、つまりドメインオブジェクトまたはドメインオブジェクトのコレクションを返すことができます。シングルステップアクションには特別なサポートがあることに注意してください。
JdbcTemplate.queryForObject
などを参照してください。スローされた RuntimeException は、アプリケーションの例外として扱われます。テンプレートの呼び出し元に伝播されます。- パラメーター:
con
- アクティブな JDBC 接続- 戻り値:
- 結果オブジェクト、ない場合は
null
- 例外:
SQLExceptionSE
- JDBC メソッドによってスローされた場合、SQLExceptionTranslator によって DataAccessException に自動変換されます。DataAccessException
- カスタム例外の場合- 関連事項: