3.11.28 /resources/jdbc-connection-pool
JDBCコネクションプールに関する設定を定義します。
説明
JDBCコネクションプールに関する設定を定義します。
接続するデータベースに応じて指定するオプションについては、コマンドリファレンスのcreate-jdbc-connection-poolを参照してください。
出現パターン
0回以上
指定できる属性
属性名 |
説明 |
指定できる値 |
デフォルト値※ |
依存関係 |
出現パターン |
---|---|---|---|---|---|
name |
コネクションプールの名称を指定します 。jdbc-resource要素のpool-name属性は、この名称を参照します。 |
型:String |
− |
− |
1回 |
datasource-classname |
JDBCドライバーのデータソースのクラス名を指定します。このクラスは、javax.sql.DataSource、javax.sql.XADataSource、javax.sql.ConnectionPoolDatasource、またはこれらを組み合わせて実装する必要があります。 |
型:String |
− |
− |
0回、または1回 |
res-type |
データソースクラスが実装するインターフェースを指定します。 java.sql.Driverを実装するJDBCドライバー、およびjava.sql.Driverを使用するアプリケーションの組み合わせで構成される場合、この属性にjava.sql.Driverを設定します。また、データソースクラスが2つ以上のインターフェースを実装する場合、またはdriver-classnameが指定された場合は、あいまいさを避けるために、この属性を指定する必要があります。この属性が正当な値を持っていて、データソースクラスが示されたインターフェースを実装していない場合、エラーが発生します。 |
型:String {javax.sql.DataSource | javax.sql.XADataSource | javax.sql.ConnectionPoolDatasource | java.sql.Driver} |
− |
− |
0回、または1回 |
driver-classname |
データベース製品によって提供されるJDBCドライバーのドライバーのクラス名を指定します。このドライバーは、java.sql.Driverインターフェースを実装する必要があります。 |
型:String java.sql.Driverインターフェースを実装するクラス(サブクラス)名 |
− |
− |
0回、または1回 |
ping |
コネクションプール生成時にデータベースコネクションの確認を行うことで、誤りのある属性値を特定し警告するかどうかを指定します。 |
型:Boolean {true | false} |
false |
− |
0回、または1回 |
steady-pool-size |
コネクションプールの最小コネクション数を指定します 。 |
型:Integer 0〜2147483647 |
24 |
− |
0回、または1回 |
max-pool-size |
コネクションプールの最大コネクション数を指定します 。 |
型:Integer 1〜2147483647 |
24 |
− |
0回、または1回 |
max-wait-time-in-millis |
コネクション取得を待つ時間(ミリ秒)を指定します。0の場合、リソースが使用できるようになるまで、またはエラーが発生するまで、呼び出し側は無期限にブロックされます。 |
型:Integer 0〜2147483647 |
60000 |
− |
0回、または1回 |
pool-resize-quantity |
コネクションプールで保持しているアイドル状態のコネクションを削除する数を指定します。 これは、idle-timeout-in-secondsの間隔で定期的に実行されます。アイドル状態のコネクションとは、idle-timeout-in-secondsの間使用されていないコネクションを指します。プールサイズがsteady-pool-sizeに達すると、コネクションの削除は停止します。 |
型:Integer 1〜2147483647 |
2 |
− |
0回、または1回 |
idle-timeout-in-seconds |
コネクションプール内でアイドル状態のコネクションを維持できる最長時間を秒単位で指定します。この時間が過ぎると、コネクションプールはこのコネクションを破棄します。 この属性で指定する時間は、データベースサーバのタイムアウト値よりも短くすることで、アプリケーション内で使用できないコネクションが保持されるのを防止する必要があります。 0を指定した場合、無効になります。 |
型:Integer 0〜2147483647 |
300 |
− |
0回、または1回 |
transaction-isolation-level |
プールされたデータベースコネクションのトランザクションアイソレーションレベルを指定します。
|
型:String {read-uncommitted | read-committed | repeatable-read | serializable} |
JDBCドライバーでのデフォルトのアイソレーションレベル |
− |
0回、または1回 |
is-isolation-level-guaranteed |
transaction-isolation-levelが明示的に設定された場合にだけ有効になります。trueの場合、プールから取得したコネクションはすべて、任意のアイソレーションレベルを持つことが保障されます。これによって、性能に影響を受けるおそれのあるJDBCドライバーが幾つかあります。ホスト型アプリケーションが、アイソレーションレベルが変更されたコネクションを戻さないと確信する場合にだけ、この属性をfalseに設定します。 |
型:Boolean {true | false} |
true |
− |
0回、または1回 |
is-connection-validation-required |
アプリケーションでコネクションを取得する前に、コネクション障害検知を実施するかどうかを指定します。障害検知でコネクションに問題がある場合、コネクションは破棄され、再生成されます。 |
型:Boolean {true | false} |
false |
− |
0回、または1回 |
connection-validation-method |
コネクション障害検知の方法を指定します。
|
型:String {auto-commit | meta-data | table | custom-validation} |
table |
− |
0回、または1回 |
validation-table-name |
使用する検証テーブルの名称を指定し、SELECT文を実行してコネクションを検証します。 |
型:String |
− |
− |
0回、または1回 |
validation-classname |
カスタムの検証を提供するクラスを指定します。このパラメーターは、connection-validation-methodにcustom-validationが設定されている場合、必須です。Java EE Serverにアクセスできるクラス名を指定する必要があります。 |
型:String org.glassfish.api.jdbc.ConnectionValidationインターフェースを実装するクラス(サブクラス)名 |
− |
− |
0回、または1回 |
non-transactional-connections |
trueに設定すると、JDBCコネクションプールに作成される非トランザクションコネクションを許可します。これらのコネクションは、トランザクションマネージャーとのトランザクションに自動的には参加しません。 |
型:Boolean {true | false} |
false |
− |
0回、または1回 |
validate-atmost-once-period-in-seconds |
コネクション障害検知をする間隔を秒単位で指定します。コネクション障害検知の実施回数を最小限にします。値「0」は、Java EE Serverが接続によるコネクション障害検知の実施回数を最小に抑えようとしないことを示します。すなわち、値「0」はこの属性を無効にします。 |
型:Integer 0〜2147483647 |
0 |
− |
0回、または1回 |
connection-leak-timeout-in-seconds |
アプリケーションによる潜在的なコネクションリークを検出します。指定した期間内にアプリケーションがプールに戻さないコネクションは、潜在的なリークと判断され、スタックトレースがログに記録されます。値「0」は、リーク検出を無効にします。0以外の値は、リーク追跡を有効にします。この属性は、アプリケーションからの潜在的なコネクションリークを回避するためにconnection-leak-reclaimと共に使用します。 |
型:Integer 0〜2147483647 |
0 |
− |
0回、または1回 |
connection-leak-reclaim |
trueに設定すると、connection-leak-timeout-in-secondsの発生後に、コネクションを再要求します。 |
型:Boolean {true | false} |
false |
− |
0回、または1回 |
connection-creation-retry-attempts |
新しいコネクションの作成に失敗した場合に行われる試行の回数を指定します。 |
型:Integer 0〜2147483647 |
0 |
− |
0回、または1回 |
connection-creation-retry-interval-in-seconds |
connection-creation-retry-attemptsの値が0より大きい場合に、コネクションの作成を試行する間隔を秒単位で指定します。 |
型:Integer 0〜2147483647 |
10 |
− |
0回、または1回 |
statement-timeout-in-seconds |
ステートメントのクエリータイムアウトプロパティーを設定して、異常に長い時間実行されているクエリーを終了させる機能を有効にします。-1を指定するとこの機能は無効になります。アプリケーションが実行したJDBCクエリーが異常に長い時間実行されている場合、タイムアウトをステートメントに明示的に設定しないかぎり、JDBCクエリーは応答なし状態のままになるおそれがあります。この属性は、すべてのクエリーが指定した時間内に完了しない場合、自動的にタイムアウトすることを保証します。ステートメントが作成されると、この属性の指定値に従いqueryTimeoutが設定されます。これは、基本的なJDBCドライバーがStatement、PreparedStatement、CallableStatement、およびResultSetのqueryTimeoutをサポートする場合にだけ機能します。 |
型:Integer -1〜2147483647 |
-1 |
− |
0回、または1回 |
lazy-connection-enlistment |
trueに設定すると、コネクションは、実際に利用されるまでトランザクションに参加しません。falseに設定すると、コネクションが取得された時点で、トランザクションに参加します。 |
型:Boolean {true | false} |
false |
− |
0回、または1回 |
lazy-connection-association |
trueに設定すると、物理コネクションは、使用されるまで論理コネクションに関連づけられません。falseに設定すると、物理コネクションは、使用される前でも論理コネクションに関連づけられます。 |
型:Boolean {true | false} |
false |
− |
0回、または1回 |
match-connections |
プールから取得したコネクションが、特定の資格を持つかコネクションマッチングを行います。trueに設定すると、コネクションマッチングを有効にします。コネクションが同じ種類の場合、falseに設定できます。複数のユーザークレデンシャルを持つアプリケーションがコネクションプールを使用する場合、match-connectionsをtrueに設定する必要があります。 コネクションプールはリクエストの資格とプール内のコネクションを照合し、一致したコネクションを戻します。新規のリクエストが異なる資格を持つ場合、一致しない未使用のコネクションを自動的に破棄し、新しいコネクションを提供して新規のリクエストを満たします。 この属性は、アプリケーションが1つの資格だけしか使用せず、プールが同じ種類のコネクションを持っているとわかっている場合、trueにする必要はありません。 |
型:Boolean {true | false} |
false |
− |
0回、または1回 |
max-connection-usage-count |
コネクションがプールに再利用される回数を指定します。指定した回数だけ再利用されると、コネクションはクローズされます。値「0」は、この機能を無効にします。コネクションを再利用できる最大回数を制限することで、アプリケーションがステートメントを閉じない場合にステートメントリークを回避できます。 |
型:Integer 0〜2147483647 |
0 |
− |
0回、または1回 |
statement-cache-size |
LRUキャッシュ方式を使用してキャッシュするステートメント数を指定します。値「0」はステートメントのキャッシュを無効にします。 |
型:Integer 0〜2147483647 |
0 |
− |
0回、または1回 |
pooling |
コネクションをプールするかどうかを指定します。 |
型:Boolean {true | false} |
true |
− |
0回、または1回 |
- (凡例)
−:該当しません。
- 注※
定義項目の省略時のデフォルト値です。