管理コンソールで接続プールを作成すると、特定のデータベースへの接続の項目を定義することになります。
接続プールを作成するには、JDBC API をサポートするドライバ (JDBC ドライバ) を最初にインストールし、統合する必要があります。「JDBC ドライバを統合する」を参照してください。
JDBC 接続プールの作成には次の情報が必要です。手順を進める前に、これらの情報を収集してください。
データベースベンダー名
リソースの型。たとえば javax.sql.DataSource (ローカルトランザクションのみ)、java.sql.ConnectionPoolDataSource (ローカルトランザクション、パフォーマンス改善が可能)、javax.sql.XADataSource (グローバルトランザクション) など
データソースクラス名
データベース名 (URL)、ユーザー名、およびパスワードなどの必要なプロパティー
「新しい JDBC 接続プール (ステップ 1/2)」ページが開きます。
注 – 「リソース」ノードおよび「JDBC」ノードを展開し、「接続プール」ノードを選択して、「JDBC 接続プール」ページにアクセスすることもできます。次に、「新しい接続プール」ページで、「新規」を選択して新しい接続プールを作成します。
このフィールドは必須です。
javax.sql.XADataSource (グローバルトランザクション)、java.sql.ConnectionPoolDataSource (ローカルトランザクション、パフォーマンス改善が可能)、javax.sql.DataSource (ローカルトランザクションのみ) から選択できます。
「新しい JDBC 接続プール (ステップ 2/2)」ページが開きます。
この値は、プールを最初に作成したり、アプリケーションサーバーを起動したりするときの、プールに含まれる接続の数も判定します。デフォルト値は 8 です。
デフォルト値は 32 です。
プールのサイズを最大プールサイズおよび最小プールサイズに対して拡大および縮小すると、一括処理でプールサイズが変更されます。この値は一括処理での接続の数を指定します。この値を過大に設定すると接続の作成と再利用が遅れ、過小に設定すると効率が落ちます。デフォルト値は 2 です。
この時間を過ぎると、接続はプールから削除されます。デフォルト値は 30 です。
デフォルト値は 60,000 です。
接続検証によって、サーバーは障害発生時に再接続できます。
アプリケーションサーバーは、次の 3 つの方法でデータベース接続を検証できます。auto-commit、metadata、および table。
アプリケーションサーバーは、con.getAutoCommit() メソッドと con.getMetaData メソッドを呼び出して接続を検証します。
注 – 多数の JDBC ドライバが、これらの呼び出しの結果をキャッシュします。その結果、これらの呼び出しを使用すると、信頼できる検証が行われない場合もあります。呼び出しがキャッシュされるかどうかについて、ドライバベンダーに問い合わせる必要があります。
アプリケーションは、指定したデータベース表に対してクエリーを実行します。表は実在し、アクセス可能である必要がありますが、行は必要ありません。多くの行を持つ既存の表や、すでに頻繁にアクセスされている表を使用しないでください。
テーブル名に含めることができるのは、英数字、下線、ダッシュ、またはドットの各文字だけです。
このチェックボックスが選択されていない場合、個々の接続はそれぞれの使用時のみ再度確立されます。
コンポーネント以外の呼び出し元の具体例には、サーブレットフィルタやライフサイクルモジュールなどがあります。
指定しない場合、接続には JDBC ドライバによって設定されるデフォルトの遮断レベルが適用されます。
「保証」チェックボックスを選択すると、プールから取得されるすべての接続が同じ遮断レベルになります。たとえば、最後の使用時に con.setTransactionIsolation を使って接続の遮断レベルをプログラム的に変更した場合、このメカニズムによって状態が指定の遮断レベルに戻されます。
必須プロパティーの具体例は、データベース名 (URL)、ユーザー名、パスワードなどです。データベースベンダーによってプロパティーが異なるため、詳細については、ベンダーのマニュアルを参照してください。