release()

現行接続の使用を解放して、それを接続プールに戻します。

構文

void release()
 

パラメーター

なし。

戻り値

なし。

例外

CwDBConnectionException

注記

release() メソッドは、コラボレーション・オブジェクトによる現行接続の使用を明示的に解放します。解放された接続はその接続プールに戻されます。関連付けられているデータベースへの接続を必要とする他のコンポーネント (マップまたはコラボレーション) は、この接続を使用できるようになります。接続を明示的に解放しない場合は、現行のコラボレーションの実行の最後にコラボレーション・オブジェクトによって暗黙的に接続が解放されます。このため、静的変数の中に接続を保管して再使用することはできません

重要:
トランザクションが現在アクティブである場合、release() メソッドは使用しないでください。暗黙的なトランザクション・ブラケットの場合、ICS は、コラボレーションが成功または失敗のいずれかを確認するまでデータベース・トランザクションを終了しません。このため、暗黙的なトランザクション・ブラケットを使用する接続にこのメソッドを使用すると、CwDBTransactionException 例外が発生します。

この例外を明示的に処理しないと、アクティブなトランザクションも自動的にロールバックされます。トランザクションがアクティブかどうかは、inTransaction() メソッドを使用して判別できます。

関連項目

"接続の解放"

getDBConnection()inTransaction()isActive()

Copyright IBM Corp. 2004