connectionpool
クラス ConnectionPool

java.lang.Object
  |
  +--connectionpool.ConnectionPool

class ConnectionPool
extends java.lang.Object

このクラスは接続を保存するためのプールを管理します。プールには2 種類あります。プログラムが DriverManager.getConnection() で取得して 使用中の接続を保存するプール。および、プログラムが Connection.close() を呼び出して未使用になった接続を保存するプールで す。

この接続プールクラスに追加される接続オブジェクトは、常に getConnection() メソッドによってプログラムから要求された接続です。 したがって、使用中のプール activePool に保存されます。

Connection.close()で未使用になった接続オブジェクトは、自ら release()を呼び出して、使用中プー ルから未使用プール stockPool に移動します。

バージョン:
$Revision: 3.1 $
作成者:
TSUTSUMI Kikuo

コンストラクタの概要
ConnectionPool()
          未使用接続を格納するプールと、使用中の接続を格納するプールを作 成します。
 
メソッドの概要
 void add(PoolingConnection conn)
          指定された接続を使用中の状態に設定して、使用中プールに追加しま す。
(パッケージプライベート)  void clear()
          未使用接続オブジェクトをすべて破棄します。
(パッケージプライベート)  void destroy()
          接続プールを破棄します。
 PoolingConnection get()
          未使用接続プールから最初に保存された接続を返します。
 boolean hasStockConnection()
          未使用接続がプールされていれば真を返します。
(パッケージプライベート)  void release(PoolingConnection conn)
          使用中の接続を、使用中プールから未使用プールに移動します。
(パッケージプライベート)  void remove(PoolingConnection conn)
          接続を接続プールから削除します。
 int size()
          接続プール全体の現在のサイズを返します。
 
クラス java.lang.Object から継承したメソッド
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

ConnectionPool

public ConnectionPool()

未使用接続を格納するプールと、使用中の接続を格納するプールを作 成します。

メソッドの詳細

size

public int size()

接続プール全体の現在のサイズを返します。

戻り値:
使用中接続プールのサイズと未使用接続プールのサイズの合計。

add

public void add(PoolingConnection conn)

指定された接続を使用中の状態に設定して、使用中プールに追加しま す。接続を削除するときには先頭から検索していくため、先頭に追加し ます。これは、最近に使用した接続を先に削除するであろうと推定した ためです。

パラメータ:
conn - 追加する接続オブジェクト。

get

public PoolingConnection get()

未使用接続プールから最初に保存された接続を返します。返した接続は 未使用接続プールから取り除きます。

戻り値:
使用されていない接続オブジェクト。

hasStockConnection

public boolean hasStockConnection()

未使用接続がプールされていれば真を返します。

戻り値:
未使用接続が存在すれば真。

release

void release(PoolingConnection conn)

使用中の接続を、使用中プールから未使用プールに移動します。

パラメータ:
conn - 未使用状態にしたプーリング接続オブジェクト。

remove

void remove(PoolingConnection conn)

接続を接続プールから削除します。このメソッドを呼ぶ前に、 PoolingConnection.closeConnection ()を実行しておかなければなりま せん。

パラメータ:
conn - 接続プールから削除するプーリング接続オブジェクト。

clear

void clear()
     throws java.sql.SQLException

未使用接続オブジェクトをすべて破棄します。

例外:
java.sql.SQLException - 接続の切断に失敗した場合。

destroy

void destroy()
       throws java.sql.SQLException

接続プールを破棄します。複数のスレッドから接続プールを使用して いる場合、このメソッドを呼び出すと、他のスレッドが接続プールを使 用できなくなるので注意してください。

例外:
java.sql.SQLException - 接続の切断に失敗した場合。


Copyright(c) 2001 TSUTSUMI Kikuo. ALL RIGHTS RESERVED.