クラス ConnectionFactoryUtils
java.lang.ObjectSE
org.springframework.r2dbc.connection.ConnectionFactoryUtils
ConnectionFactory から R2DBC 接続を取得するための静的メソッドを提供するヘルパークラス。Spring の DatabaseClient、Spring の R2DBC 操作オブジェクトによって内部的に使用されます。アプリケーションコードで直接使用することもできます。
- 導入:
- 5.3
- 作成者:
- Mark Paluch, Christoph Strobl
- 関連事項:
フィールドのサマリー
フィールド修飾子と型フィールド説明static final intR2DBC 接続をクリーンアップする ReactiveTransactionSynchronization オブジェクトの順序値。コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明static DataAccessExceptionconvertR2dbcException(StringSE task, StringSE sql, R2dbcException ex) 指定されたR2dbcExceptionを汎用DataAccessExceptionに変換します。static reactor.core.publisher.Mono<ConnectionFactory>currentConnectionFactory(ConnectionFactory connectionFactory) 現在のTransactionSynchronizationManagerからConnectionFactoryを取得します。static reactor.core.publisher.Mono<Connection>doGetConnection(ConnectionFactory connectionFactory) 指定されたConnectionFactoryから実際に R2DBC 接続を取得します。static reactor.core.publisher.Mono<VoidSE>doReleaseConnection(Connection connection, ConnectionFactory connectionFactory) 指定されたConnectionFactoryから取得された指定されたConnectionを実際に閉じます。static reactor.core.publisher.Mono<Connection>getConnection(ConnectionFactory connectionFactory) 指定されたConnectionFactoryからConnectionを取得します。static Connection指定されたConnectionの最も内側のターゲットConnectionを返します。static reactor.core.publisher.Mono<VoidSE>releaseConnection(Connection con, ConnectionFactory connectionFactory) 外部で管理されていない(つまり、サブスクリプションにバインドされていない)場合は、指定されたConnectionFactoryから取得された指定されたConnectionを閉じます。
フィールドの詳細
CONNECTION_SYNCHRONIZATION_ORDER
public static final int CONNECTION_SYNCHRONIZATION_ORDERR2DBC 接続をクリーンアップする ReactiveTransactionSynchronization オブジェクトの順序値。- 関連事項:
コンストラクターの詳細
ConnectionFactoryUtils
public ConnectionFactoryUtils()
メソッドの詳細
getConnection
public static reactor.core.publisher.Mono<Connection> getConnection(ConnectionFactory connectionFactory) 指定されたConnectionFactoryからConnectionを取得します。例外を未チェックのジェネリクスデータアクセス例外の Spring 階層に変換し、コードの呼び出しを簡素化し、スローされる例外をより意味のあるものにします。現在の
TransactionSynchronizationManagerにバインドされている対応する接続を認識しています。トランザクション同期がアクティブな場合、接続をTransactionSynchronizationManagerにバインドします。- パラメーター:
connectionFactory- からConnectionsを取得するConnectionFactory- 戻り値:
- 指定された
ConnectionFactoryからの R2DBC 接続 - 例外:
DataAccessResourceFailureException-Connectionの取得に失敗した場合- 関連事項:
doGetConnection
public static reactor.core.publisher.Mono<Connection> doGetConnection(ConnectionFactory connectionFactory) 指定されたConnectionFactoryから実際に R2DBC 接続を取得します。getConnection(io.r2dbc.spi.ConnectionFactory)と同じですが、元の例外を保持します。現在の
TransactionSynchronizationManagerにバインドされている対応する接続を認識しています。トランザクション同期がアクティブな場合、接続をTransactionSynchronizationManagerにバインドします- パラメーター:
connectionFactory- から接続を取得するConnectionFactory- 戻り値:
- 指定された
ConnectionFactoryからの R2DBCConnection。
releaseConnection
public static reactor.core.publisher.Mono<VoidSE> releaseConnection(Connection con, ConnectionFactory connectionFactory) 外部で管理されていない(つまり、サブスクリプションにバインドされていない)場合は、指定されたConnectionFactoryから取得された指定されたConnectionを閉じます。- パラメーター:
con- 必要に応じてConnectionを閉じるconnectionFactory- 接続が取得されたConnectionFactory- 関連事項:
doReleaseConnection
public static reactor.core.publisher.Mono<VoidSE> doReleaseConnection(Connection connection, ConnectionFactory connectionFactory) 指定されたConnectionFactoryから取得された指定されたConnectionを実際に閉じます。releaseConnection(io.r2dbc.spi.Connection, io.r2dbc.spi.ConnectionFactory)と同じですが、元の例外を保持します。- パラメーター:
connection- 必要に応じてConnectionを閉じるconnectionFactory- 接続が取得されたConnectionFactory- 関連事項:
currentConnectionFactory
public static reactor.core.publisher.Mono<ConnectionFactory> currentConnectionFactory(ConnectionFactory connectionFactory) 現在のTransactionSynchronizationManagerからConnectionFactoryを取得します。- パラメーター:
connectionFactory- 接続が取得されたConnectionFactory- 関連事項:
convertR2dbcException
public static DataAccessException convertR2dbcException(StringSE task, @Nullable StringSE sql, R2dbcException ex) 指定されたR2dbcExceptionを汎用DataAccessExceptionに変換します。返された DataAccessException には、根本原因として元の
R2dbcExceptionが含まれているはずです。ただし、DataAccessExceptions は他のリソース API によっても発生している可能性があるため、クライアントコードは通常これに依存しない場合があります。とはいえ、R2DBC ベースのアクセスが発生したと予想される場合、getRootCause() instanceof R2dbcExceptionチェック(およびその後のキャスト)は信頼できると見なされます。- パラメーター:
task- 試行されているタスクを説明する読み取り可能なテキストsql- 問題を引き起こした SQL クエリまたは更新 (既知の場合)ex- 問題のあるR2dbcException- 戻り値:
- 対応する DataAccessException インスタンス
getTargetConnection
指定されたConnectionの最も内側のターゲットConnectionを返します。指定されたConnectionがラップされている場合、プレーンなConnectionが見つかるまでラップが解除されます。それ以外の場合、渡された接続はそのまま返されます。- パラメーター:
con- アンラップするConnectionラッパー- 戻り値:
- 最も内側のターゲット接続、またはラップされていない場合は渡された接続
- 関連事項: