ADataSource
では、主に接続プールから JDBC 接続を取得できます。オブジェクトは、特定のDataSource
DBMS またはファイルなどの他のデータ ソースを表します。企業が複数のデータ ソースを使用している場合、DataSource
それぞれに個別のオブジェクトをデプロイします。DataSource
インターフェイスは、ドライバー ベンダーによって実装されます。DB 接続プロパティ ファイルを外部化し、JNDI を使用してオブジェクトをフェッチします。を使用するDatasource
と、JNDI 名のみを知る必要があります。アプリケーションサーバーは詳細を気にします。
次の 3 つの方法で実装できます。
- 基本的な
DataSource
実装では、分散トランザクションでプールまたは使用されない標準の Connection オブジェクトが生成されます。
- 接続プールをサポートする
DataSource
実装は、接続プールに参加する接続オブジェクト、つまりリサイクル可能な接続を生成します。
- 分散トランザクションをサポートする
DataSource
実装では、分散トランザクション (つまり、2 つ以上の DBMS サーバーにアクセスするトランザクション) で使用できる Connection オブジェクトが生成されます。
同様に、Spring では、XML ファイルでデータソースを構成し、(1) Bean に注入するか、(2) から取得することができApplicationContext
ます。
DataSource ds = (DataSource) ApplicationContextProvider.
getApplicationContext().getBean("myDataSource");
Connection c = ds.getConnection();
推奨読書:
- DataSource オブジェクトとの接続
- DriverManager の代わりに DataSource を使用するのはなぜですか?
- JDBC を使用したデータ アクセス
- JNDIなしでDataSourceを使用してDB接続を取得するには?
- JNDI を使用せずに DB 接続を管理する最良の方法