第11章 接続プールとデータソース

目次

概要
アプリケーションサーバ: ConnectionPoolDataSource
アプリケーション: DataSource
Tomcatの設定
データソースとJNDI

JDBC 2で、標準接続プール機能がJDBCオプショナルパッケージ(またはJDBC 2.0標準拡張)として知られる追加API内に導入されました。 そして、この機能はJDBC 3 のコアAPIに含められました。 PostgreSQL™ JDBCドライバは、JDBC 2.0オプショナルパッケージ付きでJDK 1.3.x でコンパイルした場合(JDBC 2)とJDK 1.4以降でコンパイルした場合(JDBC 3)に、この機能をサポートします。 ほとんどのアプリケーションサーバにはJDBC 2.0オプショナルパッケージが含まれていますが、SunのJDBCダウンロードサイトから入手することもできます。

概要

JDBC APIは、接続プールに関してクライアントとサーバ用のインタフェースを提供します。 クライアントインタフェースはjavax.sql.DataSourceであり、アプリケーションコードは通常これを使用してプールされたデータベース接続を入手します。 サーバインタフェースはjavax.sql.ConnectionPoolDataSourceであり、ほとんどのアプリケーションサーバはPostgreSQL™ JDBCドライバを使用してインタフェースを行います。

アプリケーションサーバ環境では、通常アプリケーションサーバの設定でPostgreSQL™ ConnectionPoolDataSource実装を参照します。 アプリケーションコンポーネントコードでは、通常アプリケーションサーバ(PostgreSQL™ではありません)が提供するDataSourceの実装を入手します。

アプリケーションサーバが存在しない環境用に、PostgreSQL™はアプリケーションが直接使用できるDataSource実装を2つ提供します。 1つの実装は接続プールを行い、もう片方はプール処理を行わず、DataSourceインタフェースを介したデータベース接続へのアクセスを単に提供します。 繰り返しますが、アプリケーションサーバがConnectionPoolDataSourceインタフェースをサポートしていない場合を除き、アプリケーションサーバ環境ではこれらの実装を使用すべきではありません。