2 JDBC、UCPおよびデータベースにおけるJavaの簡単な紹介
Oracle Databaseは、データの格納、変更および使用に使用できるリレーショナル・データベースです。
Javaアプリケーションでは、リレーショナル・データベースのデータのアクセスおよび操作に、Java Database Connectivity(JDBC)標準が使用されます。
業界標準のアプリケーション・プログラミング・インタフェース(API)であるJDBCを使用すると、JavaからSQLを使用してRDBMSにアクセスできます。ベンダー各社はそれぞれ独自の拡張を含めたJDBC仕様を実装しています。
Mavenは、Javaプロジェクトの作成と管理に使用されるビルド自動化ツールです。
ユニバーサル接続プール(UCP)は、接続の再利用を促進してパフォーマンスを向上させるデータベース接続オブジェクトのキャッシュです。
データベースにおけるJava(OJVM)により、Javaデータ・ロジックを使用してSQL操作をグループ化し、インプレース処理用にデータベースにロードできます。
この章では、JDBCドライバ、ユニバーサル接続プール(UCP)、データベースにおけるJava (OJVM)およびOracle Databaseを使用したMavenについて説明します。
- Java Database Connectivityドライバ(JDBC)
- ユニバーサル接続プール(UCP)
- データベース内のJava (Oracle JVM)
- Maven
Java Database Connectivityドライバ(JDBC)
JDBCは、ユーザーがデータベースに接続してSQL文を実行し、データベースに問合せできるようにするデータベース・アクセス・プロトコルです。
JDBCドライバは、最新のJDBC仕様に準拠して実装されています。Javaアプリケーションは、クラスパスにJDK8と互換性のあるojdbc8.jar
が必要です。
このガイドでは、次のJDBC標準を使用しています。
-
Oracle JDBC Thinドライバ
-
Oracle JDBCパッケージ
Oracle JDBC Thinドライバ
ほとんどの場合、JDBC Thinドライバを使用することをお薦めします。JDBC Thinドライバは、適切なJava仮想マシンを搭載したシステムであれば、どのシステム上でも機能します。(JVM)Oracleが提供する他のクライアント・ドライバとして、JDBC Thinドライバ、Oracle Call Interface (OCI)ドライバ、サーバー側Thinドライバ、サーバー側内部ドライバなどがあります。
JDBC Thinドライバは、Pure JavaのType IVドライバです。JDBCドライバ・バージョン(ojdbc8.jar
)には、JDK 8のサポートが含まれています。
JDBC Thinドライバは、データベースにアクセスするためにSQL*Netを使用してサーバーと通信します。
関連項目:
『Oracle Database JDBC開発者ガイド』Oracle JDBCパッケージ
次のコアJavaクラス・ライブラリは、JDBC APIを提供します。
java.sql
javax.sql
アプリケーションで必要なクラスをインポートするには、プログラムの先頭にimport
文を含めます。
Maven Centralの使用
サポートされているすべてのリリースのOracle JDBCドライバが、Maven Centralで入手できます。そのため、Oracle JDBCドライバおよびコンパニオンJARファイルの配布センターとしてMaven Centralを検討できます。
関連項目:
Maven Centralガイドユニバーサル接続プール
接続プールは、接続オブジェクトを再利用して、接続オブジェクトが作成される回数を減らすことで、パフォーマンスを向上させます。
Oracle Universal Connection Pool (UCP)は、Oracle Database構成との密接な統合を利用して、高可用性、スケーラビリティ、ロード・バランシングとともに接続プール機能を提供する、機能豊富なJava接続プールです。
UCPを使用するには、Javaアプリケーションまたはコンテナのクラスパスにucp.jar
とojdbc8.jar
(JDK8)が必要です。
関連項目:
Oracle Universal Connection Pool開発者ガイドデータベースにおけるJava(OJVM)
Oracle Databaseには、サーバーに常駐するJava仮想マシン(JVM)があります。それによって、サーバー上のOracle JVM内で実行中のJavaアプリケーションから、同じシステムおよび同じプロセスに存在するデータにアクセスできます。
データ処理が大きいアプリケーションには、データベースにおけるJavaをお薦めします。JVMは、基礎となるOracle RDBMSライブラリを直接使用する機能があり、JavaコードとSQLデータの間にネットワーク接続が必要ありません。そのため、パフォーマンスと実行が向上します。データ・アクセスのために、サーバー上でJavaコードを実行するとき、Oracle Databaseはサーバー側内部ドライバを使用します。