IPooledConnection インターフェイス

定義

接続プール管理のフックを提供するオブジェクト。

[Android.Runtime.Register("javax/sql/PooledConnection", "", "Javax.Sql.IPooledConnectionInvoker")]
public interface IPooledConnection : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("javax/sql/PooledConnection", "", "Javax.Sql.IPooledConnectionInvoker")>]
type IPooledConnection = interface
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
属性
実装

注釈

接続プール管理のフックを提供するオブジェクト。 PooledConnection オブジェクトは、データ ソースへの物理的な接続を表します。 接続は、アプリケーションが終了したときに閉じられるのではなく、リサイクルできるため、作成する必要がある接続の数を減らすことができます。

アプリケーション プログラマは、 PooledConnection インターフェイスを直接使用しません。むしろ、接続のプールを管理する中間層インフラストラクチャによって使用されます。

アプリケーションは、メソッド DataSource.getConnectionを呼び出すと、 Connection オブジェクトを取得します。 接続プーリングが行われている場合、その Connection オブジェクトは、実際には物理接続である PooledConnection オブジェクトへのハンドルです。

接続プール・マネージャー (通常はアプリケーション・サーバー) は、 PooledConnection ・オブジェクトのプールを維持します。 プールに使用可能な PooledConnection オブジェクトがある場合、接続プール マネージャーは、その物理接続へのハンドルである Connection オブジェクトを返します。 使用可能な PooledConnection オブジェクトがない場合、接続プール マネージャーは ConnectionPoolDataSource メソッド getPoolConnection を呼び出して新しい物理接続を作成します。 ConnectionPoolDataSourceを実装する JDBC ドライバーは、新しいPooledConnection オブジェクトを作成し、それにハンドルを返します。

アプリケーションは、接続を閉じると、 Connection メソッド closeを呼び出します。 接続プールが行われている場合、接続プール マネージャーは、ConnectionEventListenerメソッド ConnectionPoolを使用して自身をaddConnectionEventListener オブジェクトとして登録しているため、通知を受け取ります。 接続プール マネージャーは、 PooledConnection オブジェクトへのハンドルを非アクティブ化し、 PooledConnection オブジェクトを接続のプールに返して、再度使用できるようにします。 したがって、アプリケーションがその接続を閉じると、基になる物理接続は閉じられるのではなくリサイクルされます。

物理接続は、接続プール マネージャーが PooledConnection メソッド closeを呼び出すまで閉じません。 このメソッドは、通常、サーバーを順番にシャットダウンするために、または致命的なエラーによって接続が使用できなくなった場合に呼び出されます。

接続プール・マネージャーは、多くの場合、ステートメント・プール・マネージャーでもあり、 PreparedStatement ・オブジェクトのプールをメインにしています。 準備されたステートメントを閉じると、アプリケーションはPreparedStatementcloseメソッドを呼び出します。 プールStatement実行中は、StatementEventListener メソッド ConnectionPoolを使用して自身がaddStatementEventListener オブジェクトとして登録されているため、プール マネージャーに通知されます。 したがって、アプリケーションがその PreparedStatementを閉じると、基になる準備されたステートメントは、閉じられるのではなくリサイクルされます。

1.4 で追加されました。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

プロパティ

名前 説明
Connection

データベースへの接続を作成します。

Handle

基になる Android オブジェクトの JNI 値を取得します。

(継承元 IJavaObject)
JniIdentityHashCode

ラップされたインスタンスの java.lang.System.identityHashCode() の値を返します。

(継承元 IJavaPeerable)
JniManagedPeerState

マネージド ピアの状態。

(継承元 IJavaPeerable)
JniPeerMembers

メンバー アクセスと呼び出しのサポート。

(継承元 IJavaPeerable)
PeerReference

ラップされたJava オブジェクト インスタンスのJniObjectReferenceを返します。

(継承元 IJavaPeerable)

メソッド

名前 説明
AddConnectionEventListener(IConnectionEventListener)

この PooledConnection オブジェクトでイベントが発生したときに通知されるように、指定されたイベント リスナーを登録します。

AddStatementEventListener(IStatementEventListener)

このStatementEventListener オブジェクトにPooledConnectionを登録します。

Close()

この PooledConnection オブジェクトが表す物理接続を閉じます。

Disposed()

インスタンスが破棄されたときに呼び出されます。

(継承元 IJavaPeerable)
DisposeUnlessReferenced()

このインスタンスへの未処理の参照がない場合は、 Dispose()を呼び出します。それ以外の場合は何も実行しません。

(継承元 IJavaPeerable)
Finalized()

インスタンスが終了したときに呼び出されます。

(継承元 IJavaPeerable)
RemoveConnectionEventListener(IConnectionEventListener)

この PooledConnection オブジェクトでイベントが発生したときに通知されるコンポーネントの一覧から、指定されたイベント リスナーを削除します。

RemoveStatementEventListener(IStatementEventListener)

ドライバーがStatementEventListenerが閉じられたか無効であることが検出されたときに通知されるコンポーネントの一覧から、指定したPreparedStatementを削除します。

SetJniIdentityHashCode(Int32)

JniIdentityHashCodeによって返される値を設定します。

(継承元 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

接続プール管理のフックを提供するオブジェクト。

(継承元 IJavaPeerable)
SetPeerReference(JniObjectReference)

PeerReferenceによって返される値を設定します。

(継承元 IJavaPeerable)
UnregisterFromRuntime()

ランタイムが将来の Java.Interop.JniRuntime+JniValueManager.PeekValue 呼び出しから返されないように、このインスタンスの登録を解除します。

(継承元 IJavaPeerable)

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

接続プール管理のフックを提供するオブジェクト。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象