概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
openGion 5.3.6.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## org.opengion.fukurou.db
クラス ConnectionPool

    java.lang.Object
      org.opengion.fukurou.util.AbstractObjectPool<java.sql.Connection>
          org.opengion.fukurou.db.ConnectionPool

     class ConnectionPool

extends AbstractObjectPool<java.sql.Connection>

ConnectionPool は、AbstractObjectPool を継承した オブジェクトプールです。 Connection オブジェクトをプールすることにより、ConnectionFactory で 管理する Map オブジェクトの実態として、各ID毎の コネクションをキープします。

機能階層
  ＤＢ/Shell制御
バージョン
  4.0
作成者
  Kazuhiko Hasegawa
導入されたバージョン:
  JDK5.0,

コンストラクタの概要
`ConnectionPool(EDbid edbid)` DBID を指定して作成する コンストラクター DBID をキーに､ HybsSystem.sys メソッドのデータベース変数を取得します。

メソッドの概要
`protected java.sql.Connection` | `createInstance()` Connection オブジェクトを作成します。
`java.lang.String` | `dbidInfo()` 接続先の簡易な内部情報を返します。
`java.lang.String` | `getDBName()` 接続先のDB名を返します。
`java.lang.String` | `getDBVersion()` 接続先のDBバージョンを返します。
`protected void` | `objectFinal(java.sql.Connection obj)` オブジェクトプールから削除するときに呼ばれます。
`java.lang.String` | `toString()` 内部状況を簡易的に表現した文字列を返します。
`boolean` | `useApplicationInfo()` アクセスログ取得の為のDBMS_APPLICATION_INFOの使用可否を取得します。

クラス org.opengion.fukurou.util.AbstractObjectPool から継承されたメソッド
`clear, init, init, isEmpty, newInstance, objectInitial, release, remove, size`

クラス java.lang.Object から継承されたメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

コンストラクタの詳細

### ConnectionPool

    public ConnectionPool(EDbid edbid)

  DBID を指定して作成する コンストラクター DBID をキーに､ HybsSystem.sys メソッドのデータベース変数を取得します。 取得するのは､ DBID + _DB_URL／_DB_USER／_DB_PASSWD／_DB_MINCOUNT／_DB_MAXCOUNT です。 DBID が null の場合は，"DEFAULT" が使用されます。

  パラメータ:
    `edbid` - DBIDオブジェクト
  変更履歴:

    3.5.4.3 (2004/01/05) キャッシュの寿命を指定
    3.5.4.7 (2004/02/06) DBID のゼロストリングチェック追加
    4.0.0.0 (2007/10/10) キャッシュされた、初期ConnectionPool を使用
    4.0.0.0 (2007/10/25) DB設定情報のXML化に伴う変更

メソッドの詳細

### objectFinal

    protected void objectFinal(java.sql.Connection obj)

  オブジェクトプールから削除するときに呼ばれます。 このメソッドで各オブジェクトごとの終了処理を行います。 例えば､データベースコネクションであれば､close() 処理などです。

  オーバーライド:
    クラス `AbstractObjectPool<java.sql.Connection>` 内の `objectFinal`
  パラメータ:
    `obj` - 終了処理を行うオブジェクト
  変更履歴:

    3.5.4.8 (2004/02/23) SQLException は無視します。
    3.5.6.0 (2004/06/18) synchronized を解除します。

### createInstance

    protected java.sql.Connection createInstance()

  Connection オブジェクトを作成します。 DriverManager.getConnection により作成されたConnection を Connection で ラッピングします。 Connectionオブジェクトは,close()メソッドで,自分自身を ConnectionFactory の プールに戻します。

  定義:
    クラス `AbstractObjectPool<java.sql.Connection>` 内の `createInstance`
  戻り値:
    Connection オブジェクト
  変更履歴:

    3.3.3.3 (2003/08/06) コネクションに対して、setTransactionIsolation を、設定しておく。
    3.5.2.0 (2003/10/20) 接続情報に、データベース名、ドライバ名情報を追加する。
    3.5.6.0 (2004/06/18) synchronized を解除します。
    3.8.8.2 (2007/01/26) useAppInfo を設定します。
    4.0.0.0 (2007/10/30) 保持情報オブジェクト化に伴う変更
    5.1.2.0 (2010/01/01) MySQL対応 明示的に、TRANSACTION_READ_COMMITTED を指定する。

### useApplicationInfo

    public boolean useApplicationInfo()

  アクセスログ取得の為のDBMS_APPLICATION_INFOの使用可否を取得します。
  データベースへのアクセスログ取得の為、エンジンで接続するコネクションについて DBMS_APPLICATION_INFO.SET_CLIENT_INFO と SET_MODULE を呼び出しています。 この処理は、ORACLEとの接続のみ有効ですので、接続先データベースが ORACLE 以外は false を返します。 ORACLE の場合は、システムリソースの USE_DB_APPLICATION_INFO 属性の設定値を 返します。この設定値の初期値は、true です。

  戻り値:
    true:使用する/false:使用しない
  変更履歴:

    3.8.8.2 (2007/01/26) 新規追加

### getDBName

    public java.lang.String getDBName()

  接続先のDB名を返します。

  戻り値:
    接続先のDB名
  変更履歴:

    4.3.7.0 (2009/06/01) 新規作成

### getDBVersion

    public java.lang.String getDBVersion()

  接続先のDBバージョンを返します。

  戻り値:
    接続先のDBバージョン
  変更履歴:

    4.3.7.0 (2009/06/01) 新規作成

### dbidInfo

    public java.lang.String dbidInfo()

  接続先の簡易な内部情報を返します。

  戻り値:
    接続先の簡易な内部情報
  変更履歴:

    5.3.4.0 (2011/04/01) toString() の簡易版

### toString

    public java.lang.String toString()

  内部状況を簡易的に表現した文字列を返します。 DBID／URL／USER／プールサイズ を返します。

  オーバーライド:
    クラス `AbstractObjectPool<java.sql.Connection>` 内の `toString`
  戻り値:
    このオブジェクトプールの文字列表現
  変更履歴:

    3.5.2.0 (2003/10/20) 接続情報に、データベース名、ドライバ名情報を追加する。
    3.5.6.6 (2004/08/23) 同期化方法を統一する為、synchronized をつけます。(別途 要検討)
    4.0.0.0 (2007/10/29) EDbidのtoStringを呼ぶように変更

概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
| openGion 5.3.6.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.