クラス SingleConnectionFactory
java.lang.ObjectSE
org.springframework.r2dbc.connection.DelegatingConnectionFactory
org.springframework.r2dbc.connection.SingleConnectionFactory
- 実装されたすべてのインターフェース:
ConnectionFactory
、Wrapped<ConnectionFactory>
、DisposableBean
使用後に閉じられない単一の R2DBC
Connection
をラップする DelegatingConnectionFactory
の実装。明らかに、これはマルチスレッド対応ではありません。 シャットダウン時に、誰かが close()
メソッドを介して基になる Connection
を閉じる必要があることに注意してください。SmartConnectionFactory 対応の場合(たとえば、ConnectionFactoryUtils.releaseConnection(Connection, ConnectionFactory)
を使用する場合)、クライアントコードは Connection
ハンドルで close を呼び出すことはありません。
永続化ツールを使用する場合など、クライアントコードがプールされた Connection
を想定して Connection.close()
を呼び出す場合は、"suppressClose" を true
に設定します。これにより、物理的な接続ではなく、クローズ抑制プロキシが返されます。
これは主に、接続の使用箇所のテストとパイプライン化を目的としています。例: ConnectionFactory
で動作することが期待されるコードについて、アプリケーションサーバーの外部で簡単にテストできます。この実装は、接続プールのようなユーティリティとしては機能しないことに注意してください。接続プーリングには、r2dbc-pool
などの ConnectionFactory
のプーリングが必要です。
- 導入:
- 5.3
- 作成者:
- Mark Paluch
- 関連事項:
コンストラクターのサマリー
コンストラクター説明SingleConnectionFactory
(ConnectionFactory targetConnectionFactory) Bean スタイルの構成のコンストラクター。SingleConnectionFactory
(Connection target, ConnectionFactoryMetadata metadata, boolean suppressClose) SingleConnectionFactory
(StringSE url, boolean suppressClose) R2DBC 接続 URL を使用して新しいSingleConnectionFactory
を作成します。メソッドのサマリー
修飾子と型メソッド説明reactor.core.publisher.Mono<? extends Connection>
create()
void
destroy()
基になるConnection
を閉じます。protected BooleanSE
返されたConnection
の "autoCommit" 設定を上書きする必要があるかどうかを返します。protected Connection
指定されたConnection
を、すべてのメソッド呼び出しを委譲するがクローズ呼び出しを抑制するプロキシでラップします。protected boolean
返されたConnection
が近接抑制プロキシであるか物理Connection
であるかを返します。protected reactor.core.publisher.Mono<Connection>
prepareConnection
(Connection connection) ご使用前にConnection
をご用意ください。reactor.core.publisher.Mono<VoidSE>
基礎となる共有接続をリセットして、次のアクセスで再初期化します。void
setAutoCommit
(boolean autoCommit) 返されたConnection
の "autoCommit" 設定を上書きするかどうかを設定します。void
setSuppressClose
(boolean suppressClose) 返されるConnection
を近接抑制プロキシにするか、物理Connection
にするかを設定します。クラス org.springframework.r2dbc.connection.DelegatingConnectionFactory から継承されたメソッド
getMetadata, getTargetConnectionFactory, unwrap
コンストラクターの詳細
SingleConnectionFactory
Bean スタイルの構成のコンストラクター。SingleConnectionFactory
R2DBC 接続 URL を使用して新しいSingleConnectionFactory
を作成します。- パラメーター:
url
-ConnectionFactory
ディスカバリへのアクセスに使用する R2DBCURLsuppressClose
- 返されたConnection
が近接抑制プロキシまたは物理Connection
である必要がある場合- 関連事項:
SingleConnectionFactory
public SingleConnectionFactory(Connection target, ConnectionFactoryMetadata metadata, boolean suppressClose) - パラメーター:
target
- 基になるターゲットConnection
metadata
- このConnectionFactory
に関連付けられるConnectionFactory
メタデータsuppressClose
-close()
呼び出しを抑制するConnection
でConnection
をラップする必要がある場合はtrue
(プールされたConnection
を期待するアプリケーションで通常のclose()
の使用を可能にするため)
メソッドの詳細
setSuppressClose
public void setSuppressClose(boolean suppressClose) 返されるConnection
を近接抑制プロキシにするか、物理Connection
にするかを設定します。isSuppressClose
protected boolean isSuppressClose()返されたConnection
が近接抑制プロキシであるか物理Connection
であるかを返します。setAutoCommit
public void setAutoCommit(boolean autoCommit) 返されたConnection
の "autoCommit" 設定を上書きするかどうかを設定します。getAutoCommitValue
返されたConnection
の "autoCommit" 設定を上書きする必要があるかどうかを返します。- 戻り値:
- "autoCommit" 値、または何も適用しない場合は
null
create
- 次で指定:
- インターフェース
ConnectionFactory
のcreate
- オーバーライド:
- クラス
DelegatingConnectionFactory
のcreate
destroy
public void destroy()基になるConnection
を閉じます。このConnectionFactory
のプロバイダーは、適切なシャットダウンに注意する必要があります。この Bean は
DisposableBean
を実装しているため、Bean ファクトリは、キャッシュされたシングルトンが破棄されると、これを自動的に呼び出します。- 次で指定:
- インターフェース
DisposableBean
のdestroy
resetConnection
基礎となる共有接続をリセットして、次のアクセスで再初期化します。prepareConnection
使用する前にConnection
を準備してください。構成されている場合、自動コミット設定を適用します。- パラメーター:
connection
- リクエストされたConnection
- 戻り値:
- 準備された
Connection
getCloseSuppressingConnectionProxy
指定されたConnection
を、すべてのメソッド呼び出しを委譲するがクローズ呼び出しを抑制するプロキシでラップします。- パラメーター:
target
- ラップする元のConnection
- 戻り値:
- ラップされた接続