13.11 ConnectionPoolクラス

ConnectionPoolクラスは、特定のデータベースに対する接続プールを示します。

表13-13 ConnectionPoolメソッドの概要

メソッド 概要

createConnection()

プール接続を作成します。

createProxyConnection()

プロキシ接続を作成します。

getBusyConnections()

接続プール内のビジー接続数を戻します。

getIncrConnections()

接続プール内の増分接続数を戻します。

getMaxConnections()

接続プール内の最大接続数を戻します。

getMinConnections()

接続プール内の最小接続数を戻します。

getOpenConnections()

接続プール内のオープン接続数を戻します。

getPoolName()

接続プールの名前を戻します。

getStmtCacheSize()

文キャッシュのサイズを取得します。

getTimeOut()

接続プール内の接続のタイムアウト間隔を戻します。

setErrorOnBusy()

接続プールの全接続がビジーで、それ以上の接続をオープンできない場合に、SQLExceptionが生成されるように指定します。

setPoolSize()

接続プールについて、最小、最大および増分のプール接続数を設定します。

setStmtCacheSize()

文キャッシュを有効化または無効化します。

setTimeOut()

接続プール内の接続のタイムアウト間隔を秒数で設定します。

terminateConnection()

接続を破棄します。

13.11.1 createConnection()

プール接続を作成します。

構文 説明
Connection* createConnection(
   const string &userName,
   const string &password)=0;

プール接続を作成します。userNamepassword の両方がNULLの場合、接続は外部認証されます。

Connection* createConnection(
   const UString &username,
   const UString &password)=0;

グローバリゼーション対応のプール接続を作成します。

パラメータ 説明
userName

接続に使用するユーザー名を指定します。

password

ユーザーのパスワードを指定します。

13.11.2 createProxyConnection()

接続プールからプロキシ接続を作成します。

構文 説明
Connection* createProxyConnection(
   const string &name,
   Connection::ProxyType 
      proxyType=Connection::PROXY_DEFAULT)=0;

プロキシ接続を作成します。

Connection* createProxyConnection(
   const UString &name,
   Connection::ProxyType 
      proxyType=Connection::PROXY_DEFAULT)=0;

グローバリゼーション対応のプロキシ接続を作成します。

Connection* createProxyConnection(
   const string &name,
   string roles[],
   int numRoles,
   Connection::ProxyType 
      proxyType=Connection::PROXY_DEFAULT)=0;

複数のロール用のプロキシ接続を作成します。

Connection* createProxyConnection(
   const UString &name,
   string roles[],
   unsigned int numRoles,
   Connection::ProxyType 
      proxyType=Connection::PROXY_DEFAULT)=0;

複数のロール用のグローバリゼーション対応プロキシ接続を作成します。

パラメータ 説明
name

接続するユーザー名を指定します。

roles

データベース・サーバー上でアクティブにするロールを指定します。

numRoles

データベース・サーバー上でアクティブにするロール数を指定します。

proxyType

実行するプロキシ認証の種類を指定します。ProxyTypeの定義は、表13-11を参照してください。有効な値は次のとおりです。

  • PROXY_DEFAULTは、データベース・ユーザー名を示します。

13.11.3 getBusyConnections()

接続プール内のビジー接続数を戻します。データベース常駐接続プーリングを使用する場合、この数値は、接続ブローカへの永続的な接続の数となります。

構文

unsigned int getBusyConnections() const=0;

13.11.4 getIncrConnections()

接続プール内の増分接続数を戻します。データベース常駐接続プーリングを使用する場合、この数値は、接続ブローカへの永続的な接続の数となります。

構文

unsigned int getIncrConnections() const=0;

13.11.5 getMaxConnections()

接続プール内の最大接続数を戻します。データベース常駐接続プーリングを使用する場合、この数値は、接続ブローカへの永続的な接続の数となります。

構文

unsigned int getMaxConnections() const=0;

13.11.6 getMinConnections()

接続プール内の最小接続数を戻します。データベース常駐接続プーリングを使用する場合、この数値は、接続ブローカへの永続的な接続の数となります。

構文

unsigned int getMinConnections() const=0;

13.11.7 getOpenConnections()

接続プール内のオープン接続数を戻します。データベース常駐接続プーリングを使用する場合、この数値は、接続ブローカへの永続的な接続の数となります。

構文

unsigned int getOpenConnections() const=0;

13.11.8 getPoolName()

接続プールの名前を戻します。

構文

string getPoolName() const=0;

13.11.9 getStmtCacheSize()

文キャッシュのサイズを取得します。

構文

unsigned int getStmtCacheSize() const=0;

13.11.10 getTimeOut()

接続プール内の接続のタイムアウト間隔を戻します。

構文

unsigned int getTimeOut() const=0;

13.11.11 setErrorOnBusy()

接続プールの全接続がビジーで、それ以上の接続をオープンできない場合に、SQLExceptionが生成されるように指定します。

構文

void setErrorOnBusy()=0;

13.11.12 setPoolSize()

接続プールについて、最小、最大および増分のプール接続数を設定します。

構文

void setPoolSize(
   unsigned int minConn = 0,
   unsigned int maxConn = 1,
   unsigned int incrConn = 1)=0;
パラメータ 説明
minConn

接続プールの最小接続数を指定します。

maxConn

接続プールの最大接続数を指定します。

incrConn

接続プールの増分接続数を指定します。

13.11.13 setStmtCacheSize()

文キャッシュを有効化または無効化します。0 (ゼロ)以外の値を指定すると、指定したサイズのキャッシュによる文キャッシュが有効化されます。値0 (ゼロ)を指定すると、キャッシュが無効化されます。

構文

void setStmtCacheSize(
   unsigned int cacheSize)=0;
パラメータ 説明
cacheSize

文キャッシュのサイズを指定します。

13.11.14 setTimeOut()

接続プール内の接続のタイムアウト間隔を設定します。OCCIは、アイドル時間が指定タイムアウト間隔を超えている、この接続プールに関連している接続を、すべて終了します。

この属性が設定されていない場合、プール領域が必要になると、最も以前に使用されたセッションがタイムアウトになります。Oracleでは、プールにセッションを解放する際に、タイムアウトのセッションの有無のみをチェックします。

構文

void setTimeOut(
   unsigned int connTimeOut = 0)=0;
パラメータ 説明
connTimeOut

タイムアウト間隔を秒数で指定します。

13.11.15 terminateConnection()

プール接続またはプロキシ接続を終了します。

構文

void terminateConnection(
   Connection *connection)=0;
パラメータ 説明
connection

終了するプール接続またはプロキシ接続を指定します。