# javax.sql:JDBCインターフェイス

この節ではDerbyが実装するJDBCインターフェイスについて説明します。この仕様はJ2EE準拠の一部に含まれます。

これらの拡張のより詳細な情報は、利用するバージョンのJDKのAPI文書を参照してください。この文書はhttp://java.sun.com/javase/reference/api.jspにもあります。

- javax.sql.DataSource

  実在のデータソースを表し、接続のファクトリとして働きます。DataSourceインターフェイスを実装するクラスは一般的には、Java Naming and Directory (JNDI) APIに基づき登録されます。

- javax.sql.ConnectionPoolDataSourceと javax.sql.PooledConnection

  データベースへの接続はクライアント/サーバの環境では比較的負荷が高い処理です。接続を一度確立した後、同じ接続を複数の要求に供することで、劇的にデータベースのパフォーマンスを向上することができます。

  Derbyの`ConnectionPoolDataSource`および`PooledConnection`インターフェイスの実装により、コネクションプールサーバはリソースマネージャ(Derby)への接続を維持・管理することができます。 組み込みの環境下では比較的低い負荷で接続を確立することができるので、コネクションプールは必要ではありません。

- javax.sql.XAConnection

  単一のXAConnectionから、単一のXAResourceおよび、その生存期間中に複数のConnectionを作ることができます。この種類の接続により、分散トランザクションが可能となります。

- javax.sql.XADataSource

  XADataSourceを簡単に説明すると、XAConnectionsを作成できるConnectionPoolDataSourceです。

さらにDerbyではXADataSource、DataSourceとConnectionPoolDataSourceに三つのメソッドを用意しています。 Derbyではデータソースの属性をいくつか用意しています。

- setCreateDatabase(String create)

  次回の接続でデータベースを作成する属性を設定します。引数の文字列は"create"でなければなりません。

- setShutdownDatabase(String shutdown)

  データベースを終了する属性を設定します。データベースは次回の接続で終了します。引数の文字列は"shutdown"でなければなりません。

注: これらの属性はデータベースへの接続を取得する前に設定してください。
親トピック: J2EEへの準拠:Java Transaction APIとjavax.sql インターフェイス
関連資料
JTA API