Oracle Javaロードマップ: JDBC
|
|||||||||||||
| Java Database Connectivity(JDBC)について | ページ・トップへ |
Java Database Connectivity(JDBC)は、Javaからリレーショナル・データベースに接続するための標準Javaインタフェースです。 JDBC標準はSun Microsystems社によって定義されたものです。これによって、独自のJDBCドライバを使用して標準を実装および拡張できます。
JDBCにより、異なるDBMSにわたり、広範な種類の構造化問合せ言語(SQL)データベースに接続できます。 また、新しいJDBC 2.0アプリケーション・プログラム・インタフェース(API)を使用すると、その他の表形式データ・ソース(スプレッドシートやフラット・ファイルなど)にもアクセスできます。 JDBC APIによって、エンタープライズ・データへのアクセスが必要な競争力の高いクロスプラットフォームなアプリケーションを作成する際に、"1回書けばどこでも実行できる"というJavaプラットフォームの機能を利用できます。 JDBCテクノロジ対応のドライバを使用すると、異種混合環境においてもあらゆる企業データに接続できます。
JDBC 2.0 APIには、スクロール可能な結果セットや新しいSQL:1999(以前はSQL 3)データ型など、多くの新機能があります。 JDBC 2.0 APIは、次の2つの要素で構成されます。
java.sqlパッケージには、Java 2 SDK Standard EditionとJDBCのコア機能が含まれています。 次の表に、JDBC 2.0 Core APIで採用された新機能のいくつかとその利点を一覧します。
| 機能 | 利点 |
|---|---|
|
パフォーマンスの改善。 たとえば、バイナリ・ラージ・オブジェクト(BLOB)やCLOBなどのラージ・オブジェクトを、DBサーバーからクライアントに渡さなくても操作できます。 |
|
JDBC 2.0 Optional Package APIは、個別に入手することも、Java 2 SDK Enterprise Editionの一部として入手することもできます。 javax.sqlパッケージ内の機能によって、JDBC APIは、クライアント側APIだけでなくサーバー側のテクノロジにもなります。 次の表に、JDBC 2.0 Optional APIで採用された新機能のいくつかとその利点を一覧します。
このJavaアプリケーションは、従業員表から従業員名を選択するものです。 このアプリケーションでは、次の処理が行われます。
|
このアプレットは、従業員表から従業員とその給与のリストを選択するものです。 このサンプル・プログラムでは、次の処理が行われます。
|
|
JDBC APIが開発される前は、ODBCやOLE DBなど、リレーショナル・データベースにアクセスするためのプログラミング・インタフェースはほとんどありませんでした。 JDBC APIには、次のような利点があります。
| Oracle JDBCドライバについて | ページ・トップへ |
オラクル社では、クライアント側およびサーバー側で使用できるJDBCドライバを開発しています。 これらのドライバで異なる点は、データベースへの接続方法とデータの転送方法のみです。
Oracle JDBCドライバに共通の機能は次のとおりです。
図1に、JDBC thinドライバ、OCIドライバおよびサーバー・ドライバのドライバ・データベース・アーキテクチャを示します。
Oracle JDBC thinドライバは、タイプIV、ネイティブ・プロトコル、そして100% Pure Javaの、JDBC 1.22標準に準拠した実装です。 JDBC thinドライバは、Javaソケットを使用してOracleサーバーに直接接続します。 このドライバは、Javaアプリケーションに使用することもできますが、通常は、2層アプリケーションか3層アプリケーション構成でのJavaアプレットに使用します。
3層構成では、クライアント側でブラウザ内部で実行されるJavaアプレットにJDBC thinドライバを使用できます。 thin JDBCドライバはダウンロード可能で、プラットフォームに依存しません。
JDBC thinドライバの場合、クライアント側にOracleソフトウェアがなくてもかまいません。 JDBC thinドライバは、Javaアプレットの実行と同時にブラウザにダウンロードできます。 クライアント(通常はブラウザ)で、HyperText Markup Language(HTML)ページからJavaアプレット・タグを含むURLを選択します。 アプレット・アーカイブには、適切なJDBCクラス・ファイルが含まれている必要があります。 Webサーバーにより、JavaアプレットとJDBC thinドライバがクライアントにダウンロードされます。 すると、JDBC thinドライバにより、Javaソケットを介してデータベース・サーバーへの直接接続が確立されます。
JDBC thinドライバにより、その独自の実装としてTCP/IPバージョンのOracle SQL*Net/Net8が提供されます。 このドライバはすべてJavaで書かれているため、プラットフォームに依存しません。
Oracle JDBC OCIドライバは、タイプII、ネイティブAPI、そして部分的にJavaの、JDBCインタフェースの実装です。 このドライバは、Oracleコール・インタフェース(OCI)を使用してOracleデータベースと対話します。
JDBC OCIドライバは、OCIを介してOracleデータベースと対話します。 このため、JDBC OCIドライバは、あらゆるバージョンのOracleデータベースとの互換性を持ちます。 IPC、Named Pipes、TCP/IPおよびSPX/IPXなど、インストールされているNet8アダプタをすべてサポートしています。
JDBC OCIドライバは、ネイティブ・メソッドを使用してOCIライブラリ内のCエントリ・ポイントをコールするため、プラットフォームに固有です。 ただし、JDBC/OCIドライバはダウンロードできません。 まず、OCIライブラリ、SQL*Net、COREライブラリおよびその他のサポート・ファイルを、JDBCドライバをインストールしたシステムにインストールする必要があります。 たとえば、各クライアント・マシンや中間層Javaアプリケーション・サーバーにこれらの要素をインストールします。 このドライバは、Javaアプリケーションや、Oracle Application Server(OAS)などのJava中間層には最適ですが、Javaアプレットには適していません。
JDBC OCIドライバは、次のような構成で使用できます。
次の表に、JDBC OCIドライバとJDBC thinドライバに共通の機能を一覧します。
次の表に、JDBC OCIドライバとJDBC thinドライバで異なる機能を一覧します。
Oracle JDBCサーバー側内部ドライバ(KPRB)は、Oracle8i の緊密に統合されたサーバー側JavaエンジンであるOracle Jserver内に組み込まれています。 追加のインストールや構成の必要はありません。 JDBC KPRBサーバー・ドライバを使用できるのは、Oracle8i で実行されており、Javaストアド・プロシージャ、Enterprise Beans、Java サーブレットなどのSQLエンジンにアクセスする必要がある任意のJavaプログラムです。
JDBCサーバー・ドライバでは、Oracle8i で実行されているJavaプログラムにJDBCを使用して、SQLおよびPL/SQLにアクセスできます。 このドライバには、クライアント側のドライバと同じ機能および拡張機能があります。
サーバー側JDBCドライバの違い
サーバー側JDBCドライバはクライアント側ドライバと同じAPIをサポートしていますが、両者には次のような違いがあります。
サーバー側のJDBCドライバは、クライアント側のJDBCドライバと異なり、デフォルトのセッションおよびトランザクションのコンテキストで実行されます。 JavaアプリケーションはJava仮想マシン(VM)上でデータベース内のデフォルト・コンテキストによって実行されるため、明示的にトランザクション管理を制御することはできません。
SQLおよびPL/SQLへのアクセスはRDBMS内でローカルなので、サーバー側のJDBCドライバとのリモートNet8接続という概念はありません。 サーバー側にデフォルト接続文字列を指定する必要があります。 JDBCは、常に一定の"jdbc:oracle:kprb:"という引数を持ちます。
サーバー側JDBCドライバとのリモートNet8接続という概念がないため、この接続はクローズできません。
OracleのJDBCドライバには、次のような利点があります。
| 基礎JDBCチュートリアルの参照 | ページ・トップへ |
Javaを理解するには、Sun Microsystems社のオンラインJDBCチュートリアルを読むと効果的です。 「Sun Microsystems社のオンラインJDBCチュートリアル」では、様々な演習をウォークスルーします。 基礎のJDBCから始まって、高度なJDBCトピックへと進みます。
開発および配布目的でOracle JDBCをインストールして構成するには、Oracle JDBCドライバを使用します。
Oracle JDBCは、次の方法で入手できます。
Oracle8i 以降のデータベースのインストールによりOracle JDBCを取得した場合、[Oracle Home]がインストールされます。 Oracle WebサイトからOracle JDBCを入手した場合は、tarまたはzipを解凍してJDBCディレクトリを生成してください。
Oracle JDBCドライバのインストールには、次のものが含まれます。
Oracle JDBCドライバ(Win95/Win98/NT)を使用する場合、次の設定ステップを行う必要があります。
Solarisを使用する場合、次の設定ステップを行う必要があります。
JDBCを使用するプログラムには、JDBCクラスをインポートする必要があります。 次のようにインポートしてください。
JDBCのOracle拡張機能を使用するには、次のパッケージを組み込んでください。
JDBCコードのテンプレートでは、Oracle JDBCドライバを使用してアプリケーションを作成するためのコード・フラグメントが提供されます。 このテンプレートは、具体的なJDBCの構築例と使用例を提供することによって、JDBC仕様およびJDBCプログラミング・モデルの理解を助けることを目的に設計されたものです。
JDBCコードのテンプレートは、次のようなJDBC操作を対象としています。
| アドバンストJDBCチュートリアルの参照 | ページ・トップへ |
この項では、SQL3データ型などの拡張データ型を使用するためのJDBC APIについて詳細に説明します。 また、JDBCによりサポートされるOracleオブジェクト型についても説明します。
一般にSQL3型と呼ばれるデータ型は、次期バージョンのANSI/ISO SQL標準で採用される新しいデータ型です。 JDBC 2.0 APIにより、これらのSQL3データ型からJavaプログラミング言語へのマッピングを表すインタフェースが提供されます。 JDBC 2.0 Core APIでは拡張データ型の使用が新たにサポートされるため、単純データ型と同じくらい簡単に拡張データ型を使用できるようになります。 このサポートには、本質的にオブジェクトである新しいSQLデータ型を格納、取得および更新する機能が含まれます。 このため、オブジェクト・データべースとリレーショナル・データベースの違いが少なくなります。
SQL3データ型は、次のように分類できます。
これらの型は、ラージ・オブジェクトの格納に使用されるSQL3データ型です。 CHAR、FLOATおよびDATEなどの標準の組込みデータ型以外にも、バイナリ・ラージ・オブジェクト(BLOB)およびCLOB(キャラクタ・ラージ・オブジェクト)というデータ型があります。
これらの型は、次の型を基礎にしたSQL3データ型です。
これらの型は、SQLコマンドCREATE TYPEで作成される新しい型です。 ユーザー定義型は、単一の組込み型の表記を基礎にしています。
複数の属性を含む新しい型。 組込みデータ型かユーザー定義データ型のいずれかになります。
この型は、データベース・サーバーに常駐するデータへの論理ポインタです。 次のような型です。
次のマッピングにより、SQL3型をマップするJDBC 2.0インタフェースが提供されます。
SQL3データ型を取得、格納および更新する方法は、他のデータ型の場合と同じです。 SQL3データ型の取得にはResultSet. getXXXメソッドまたはCallableStatement. getXXXメソッドを、格納にはPreparedStatement. setXXXメソッドを、更新にはupdateXXXを使用します。
次の表に、JDBC 2.0 SQL3データ型へのアクセスに使用するメソッドを示します。
| SQL3型 | getXXXメソッド | SetXXXメソッド | updateXXXメソッド |
|---|---|---|---|
// BLOBデータを読み取る BLOB blob = rset.getBLOB (1); // CLOBデータを読み取る CLOB clob = rset.getCLOB (2); // Arrayデータを取得 ARRAY obj = rset.getARRAY (1); // Ref列を取得 REF obj = rset.getREF (1);
これらは、Oracle JDBC 8.1.6ドライバで使用可能です。 Oracleデータベース・バージョンとOracle8i は、本質的にSQL3型のサポートを提供しています。
ラージ・オブジェクト(LOB)は、内部オブジェクトにも外部オブジェクトにもなります。 内部LOBは、データベース表領域内部に格納されます。 これにより、領域が最適化され、効率的なアクセスが実現します。 内部LOBのデータ型は、バイナリ・ラージ・オブジェクト(BLOB)かキャラクタ・ラージ・オブジェクト(CLOB)のいずれかになります。 外部LOB(BFILES)は、データベース表領域外部のオペレーティング・システム・ファイルに格納された大きなバイナリ・データ・オブジェクトです。
BLOB、CLOBおよびBFILEオブジェクトの重要な機能は、データベース・サーバーからクライアント・マシンにデータ全部を移さなくても操作できるということです。 このような型のインスタンスは、実際にはインスタンスが表すデータベース内のオブジェクトへの論理ポインタです。 SQLのBLOB、CLOBまたはBFILEオブジェクトは非常に大きい場合があるため、この機能によってパフォーマンスを大幅に改善できます。
LOBデータを使用する場合、まず、表からそのロケータを取得する必要があります。 次に、LOBからデータを読み取るか、LOBにデータを書き込み、様々な種類のデータ操作を実行できるようになります。
JDBCドライバは、BLOB、CLOBおよびBFILEに対して次のクラスをサポートしています。
java.sql.BLOB(JDBC 2.0 Spec、JDBC 816 SDKまたは816ドライバでサポート)
java.sql.CLOB(JDBC 2.0 Spec、JDBC 816 SDKまたは816ドライバでサポート)
LOBにアクセスするには、次のようにします。
RDBMSのLOB列からSQL問合せフォームを使用してLOBロケータを取得するには、次のようにします。
// LOBロケータを選択して結果セット内に取得 ResultSet rs = stmt.executeQuery ( "select blob_col, clob_col from lob_table"); while (rs.next ()) { // LOBロケータをLOBのJavaラッパー・クラス内に取得 Blob blob = rs.getBlob (1); Clob clob = rs.getClob (2); [...] }
LOBロケータからデータをフェッチします。 LOBデータは、Javaストリームとして表示されます。 メソッドはJavaストリーム・クラス上で使用します。 Blobインタフェースには、BLOBオブジェクトを表示するための2つのメソッドがあります。 これらのメソッドを次に示します。
| メソッド | 説明 |
|---|---|
// BLOBロケータからBLOBデータを読み取る Java.io.InputStream byte_stream = my_blob.getBinaryStream(); byte [] byte_array = new byte [10]; int bytes_read = byte_stream.read(byte_array); ... // CLOBロケータからReader charストリーム内にCLOBデータを読み取る Java.10 Reader char_stream = my_clob.getCharacterStream(); char [] char_array = new char [10]; int chars_read = char_stream.read (char_array, 0, 10);
Oracleでは、Oracleオブジェクトの特徴とJDBCの機能を緊密な統合を提供しています。
Oracle8i は、オブジェクト・リレーショナル・データベース管理システム(ORDBMS)です。 追加のデータ型を定義するには、データの構造と操作のメソッドを指定します。 定義したデータ型は、リレーショナル・モデル内部で使用できるようになります。
たとえば、Oracle7では、CHAR、NUMBERおよびDATEなどの様々なSQLプリミティブ型の表を定義できます。
Oracle8オブジェクトでは、この機能がさらに拡張されているため、複合変数を定義して操作することができます。(たとえば、TYPE PERSONなど。型の名前にvarCHAR2、電話番号の型にvarchar2を使用。)
create type EMPLOYEE as object ( EmpName VARCHAR2(50), EmpNo INTEGER , SAL FLOAT );
OracleのJDBCドライバには、アプリケーション・プログラム内でユーザー定義データ型を使用するための多くの機能があります。 OracleのJDBCドライバを使用すると、データベース内に定義されているオブジェクトおよび収集型にアクセスできます。 この操作は、動的SQLを介してJavaプログラム内部で行われます。 また、データベース内に定義されている型を、デフォルト・マッピングまたはカスタマイズ可能マッピングによってJavaクラスに変換することもできます。
SQL型からJavaクラスへのマッピングは、カスタマイズできます。 Oracleでのクラスのマッピングは非常に柔軟性に富んでいます。 この項では、使用可能なオプションについて説明します。 自分のニーズに最も適したオプションを選択するためには、次の事項を検討して、Oracle8オブジェクトをJavaで使用できるかどうかを確認する必要があります。
OracleオブジェクトのJavaクラスを作成して移入する場合、次のようなオプションがあります。
これは、Oracle8オブジェクト型をJavaにマップする方法についてカスタマイズを指定しなかった場合にOracleによって提供されるデフォルト・マッピングです。 この場合、JDBCはオブジェクトをSTRUCTとして表示します。
これは、OracleオブジェクトとJavaクラスの間のマッピングを明示的に指定することです。 JDBCドライバには、指定したカスタムJavaクラスを移入する機能が必要です。 このため、Javaクラスは一連の制約を受けることになります。 SQLDataインタフェースまたはCustomDatumインタフェースを基礎にしてクラスを定義すると、クラスをこれらの制約に適合させることができます。
Oracle8オブジェクト型からJavaクラスへのマッピングを明示的に指定しなかった場合、Oracleデフォルト・マッピングが提供されます。 Oracle8オブジェクトは、oracle.sql.STRUCTのインスタンスとして表示されます。
oracle.sql.STRUCTクラスには、属性値を保持するoracle.sql.Datumオブジェクトの値配列が含まれます。 oracle.sql.Datumは、オブジェクトを拡張する抽象クラスであり、Oracleネイティブ・データ型階層のルートです。 oracle.sql.Datumのサブクラスはいずれも、ネイティブOracleカーネル・データ型のいずれかを表します。 これにより、SQLとJava間のデータ・コピーを最適化できます。
また、このクラスには、サーバー内の対応するオブジェクト型のSQL型名が含まれます。 ネストされたオブジェクトは、型oracle.sql.STRUCTのエントリとして値配列内に表示されます。Oracle8オブジェクト型の属性は、いずれのJavaクラスにもマップされません。 これは、プリミティブSQL型またはネイティブJava型と対応していますが、oracle.sql.Datumオブジェクトの一部として保持されます。
Oracleデフォルト・マッピングを使用すると、次のような利点があります。
次のような場合は、デフォルト・マッピングを使用してください。
|
OracleオブジェクトにカスタムJavaクラスを定義するには、次のようにします。
次のデータ変換インタフェースにより、JDBCでは実行時にデータを正確にアンパックできます。
TypeMapは、SQLオブジェクト型と、対応するJavaクラス・マッピングを備えた単純なハッシュ表です。 TypeMapにより、SQLデータをJava形式にアンパックする方法がJDBCに指定されます。 これによって、JDBC接続を備えたTypeMapが提供されます。 TypeMap内に登録されているクラスは、データ変換インタフェースのセットを実装します。
CustomDatumインタフェースとSQLDataインタフェースの比較
CustomDatumには、次のような利点があります。
SQLDataの利点は、JDBC標準であることです。 このため、コードの移植性が高くなります。
SQLDataインタフェースを使用してOracleオブジェクトにアクセスするには、次のようにします。
コード・フラグメント:
CREATE TYPE EMPLOYEE ( EMPNO NUMBER, EMPNAME VARCHAR2(100), );
Sun Microsystems社のJavaBlendなどのツールを使用すると、このステップが自動的に実行されます。
このコードは、次の3つのメソッドによって実装されます。
新規の型マップを作成するには、次のようにします。
この例では、setTypeMap()により、接続の元のマップがnewMapで上書きされます。
oraconn.setTypeMap(newMap);
標準のSQL SELECT文を使用して、データベース内の列からResultSet内にオブジェクト型をフェッチします。 getObjectを使用して、ResultSetまたはCallableStatementから、TypeMap内で指定されているJavaクラスへとデータを取り出します。 setObjectを使用して、オブジェクト型を更新します。
ResultSet rs = stmt.executeQuery ("select * from employee_table"); rs.next (); EmployeeObj ee = (EmployeeObj) rs.getObject(1);5.
データを操作するには、Java関数を使用します。 ここでは、SQLDataインタフェースを使用してOracleオブジェクトにアクセスする例を示します。
|
|
Oracleオブジェクトとその属性データをJavaアプリケーションに対して使用可能にするには、そのオブジェクトにoracle.sql.CustomDatumおよびoracle.sql.CustomDatumFactoryインタフェースを実装するJavaクラスを作成します。
CustomDatumインタフェースおよびCustomDatumFactoryインタフェースは、Oracleにより提供されます。JDBC標準の一部ではありません。
OracleのOracle JPublisherユーティリティは、CustomDatumおよびCustomDatumFactoryインタフェースを実装するクラスの生成をサポートします。
Oracle JPublisherは、OracleオブジェクトにマップするJavaクラスを作成するためにJDBCとあわせて使用できるOracleユーティリティです。 Oracle JPublisherにより、カスタムJavaクラスの完全なクラス定義が生成されます。これをインスタンス化して、Oracleオブジェクトからのデータを保持できます。 Oracle JPublisherにより生成されたクラスには、SQLからJava、およびJavaからSQLにデータを変換するためのメソッドが含まれています。 また、クラスの属性のためのgetterおよびsetterメソッドも含まれています。
Oracle JPublisherには、マッピングのためのオプションがあります。 Oracle JPublisherを使用してカスタムJavaクラスを実装した場合、属性のマッピングを選択できます。 次のマッピングから選択します。
CustomDatumインタフェースを使用してOracleオブジェクトにアクセスするには、次のようにします。
|
|
| パフォーマンスの最適化 | ページ・トップへ |
現在のOracleドライバには広範囲にわたった改良が施されており、パフォーマンスが向上するとともにメモリーの使用効率も上がりました。 一連のテストで、Oracle8i JDBCドライバは他製品との競争に勝ち続け、その卓越した性能を証明しました。 これらのドライバを操作して、構成をよりいっそう最適化できます。
自動コミット・モードは、各SQL文の後にコミットを発行するかどうかをデータベースに指示します。 自動コミット・モードが設定されていると、時間が長くかかります。クライアントから大量の文をサーバーに送られた場合などは特に、処理に長時間を要します。
JDBC仕様に準拠して、デフォルトでは、接続は自動コミット・モードでオープンされます。
|
Oracle JDBCドライバを使用すると、問合せ時に結果セットが移入されている間に、クライアントにプリフェッチする行の数を設定できます。 プリフェッチする行数のデフォルトは10です。行データをクライアントにプリフェッチすると、サーバーへのラウンドトリップ回数が減ります。 行のプリフェッチの値は、個々の文について設定することも、接続内のすべての文について設定することもできます。
|
Oracle JDBCドライバを使用すると、クライアント側で挿入数と更新数を累積しておくことができます。 累積数が指定のバッチ値に到達したら、それをバッチでサーバーに送信できます。 デフォルトのバッチ値は1です。
行のプリフェッチと同様に、バッチを行うと、サーバーへのヒット数を大幅に削減できます。 バッチ値は、一連の文について設定するか、接続内のすべての文について設定できます。
|
標準のJDBCにより問合せが実行される場合、まず、データベースへのラウンドトリップによって、結果セット列に使用する型が判別されます。 JDBCは問合せからデータを受け取ると、必要に応じてデータを変換し、同時に結果セットを移入します。
Oracle JDBCドライバを使用すると、次の問合せでの列型をドライバに通知できます。 これにより、データベースへのラウンドトリップを節約できます。 通知しない場合は、表を記述することが必要になります。 最適化されたサーバーにより、必要な型変換がすべて実行されます。
import oracle.jdbc.driver.*
Connection conn =
DriverManager.getConnection("jdbc:oracle:thin:","scott","tiger");
Statement stmt = conn.createStatement();
/*列を文字列として要求: 列型を取得するためのラウンド・トリップを回避
*サーバー上で数値から文字列に変換
*/
((OracleStatement)stmt).defineColumnType(1, Types.VARCHAR);
ResultSet rset = stmt.executeQuery("select empno from emp");
while (rset.next() )
System.out.println(rset.getString(1));
stmt.close();
defineColumnType()メソッドを起動するために、文(stmt)を型OracleStatementにキャストする必要があります。
接続のcreateStatement()メソッドにより、defineColumnType()を持たないオブジェクトのjava.sql.Statement型が返されます。 これらのメソッドは、OracleStatement実装でのみ提供されます。
SQL92構文のエスケープ処理は、デフォルトでは有効になっています。 JDBCドライバでは、SQLコードをデータベースに送る前に、エスケープ置換が実行されます。 JDBCコードにはPure Oracle構文が含まれているため、JDBCエスケープ文字パーサーを無効化し、その使用を回避できます。
stmt.setEscapeProcessing(false);
JDBCクライアントとOracleサーバーが同じマシン上で実行されている場合、BequeathメカニズムへのOCIドライバを使用してデータベースに接続できます。 Bequeath接続のほうが、TCP/IP接続よりも高速です。
頻繁に実行する文には、バインド変数とあわせてPreparedStatementを使用すると効率が上がります。 PreparedStatementはStatementから継承されたものですが、次の2つの点でStatementとは異なります。
| Oracle JDeveloperでのJDBCの使用 | ページ・トップへ |
Oracle JDeveloper Suiteは、Oracleインターネット・プラットフォーム用にコンポーネント・ベースのデータベース・アプリケーションを構築、デバッグおよび配布するための統合された1つの製品セットです。
Oracle JDeveloper環境には、100% Pure JavaやネイティブOracle8ドライバなど、JDBCの統合サポートが含まれています。 Oracle JDeveloperのデータベース・コンポーネントは、JDBCドライバを使用して、クライアントおよびサーバー上で実行されるアプリケーション間の接続を管理します。
Oracle JDeveloperでJDBCドライバがどのように使用されるかを理解してJavaコードの開発および配布に役立てるには、次の例を参照してください。
ここでは、Oracle JDeveloper統合開発環境とConnection Managerによって、複数の作業領域とプロジェクトにわたって名前付きの再利用可能な接続が提供される仕組みを示します。 次の項目について説明します。
|
ここでは、Oracle JPublisherウィザードを示します。 また、Oracleオブジェクト型にラッパー・クラスを生成する方法も示します。 次の項目について説明します。
|
| リソースおよびリファレンス | ページ・トップへ |
次に示したリンクから、JDBCおよびOracle JDeveloperに関する詳細な情報が記載されたWebを参照できます。
Oracle JDeveloperの詳細は、次のURLでOracle Technology NetworkのWebサイトを参照してください。
http://technet.oracle.com/products/jdev
| 著者について | ページ・トップへ |
Sudhir Durejaは、オラクル社のInternet Computing group of Partner Servicesの主任コンサルタントです。 Oracle Alliances内でJavaおよびOracleテクノロジを基礎にしたコンサルティングと指導に携わっています。
|
|
![]() Copyright © 2000 Oracle Corporation. All Rights Reserved. |
|