English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
JDBCはJAVA DATA bASE CConnectivity(Javaデータベース接続)は、Javaプログラミング言語と多くのデータベース間でデータベースに依存しない接続を提供する標準のJava APIです。
JDBCライブラリには、以下に記載の各タスク用のAPIが含まれており、これらのAPIは通常、データベース使用に関連しています。
データベースに接続します。
SQLまたはMySQLステートメントを作成します。
データベースでSQLまたはMySQLクエリを実行します。
結果レコードを確認および修正します。
基本的には、JDBCは規格であり、基礎データベースに対する完全なインターフェースセットを提供し、移植可能なアクセスを許可します。Javaは、例えば、以下のような異なる実行ファイルの書き込みに使用できます-
Java アプリケーション
Java アプレット
Java Servlet
Java ServerPage(JSP)
企業JavaBean(EJB)
これらの異なる実行ファイルはすべてJDBCドライバーを使用してデータベースにアクセスし、保存されたデータを利用できます。
JDBCはODBCと同じ機能を提供し、Javaプログラムがデータベースに依存しないコードを含めることを可能にします。
続ける前に、以下の2つのトピックについて十分に理解する必要があります-
JDBC APIは、データベースアクセスのための二層と三層の処理モデルをサポートしますが、通常、JDBCアーキテクチャは二層で構成されています-
JDBC API: これにより、アプリケーションとJDBCマネージャーの接続が提供されます。
JDBC Driver API: これにより、JDBCマネージャーとドライバーの接続がサポートされます。
JDBC APIは、ドライバーマネージャーとデータベース固有のドライバーを使用して、異なるデータベースとの透明な接続を提供します。
JDBCドライバーマネージャーは、各データソースにアクセスするために正しいドライバーを使用することを確保します。ドライバーマネージャーは、複数の異なるデータベースに接続する複数の並行ドライバーをサポートできます。
以下はアーキテクチャ図で、ドライバーマネージャーがJDBCドライバーとJavaアプリケーションに対する位置を示しています-
JDBC APIは以下のインターフェースとクラスを提供します-
DriverManager:この管理データベースドライバーのリストです。通信サブプロトコルを使用して、Javaアプリケーションからの接続リクエストを適切なデータベースドライバーにマッチングします。JDBCで特定のサブプロトコルを識別する最初のドライバーが、データベース接続を確立するために使用されます。
Driver:このインターフェースはデータベースサーバとの通信を処理します。Driverオブジェクトと直接のインタラクションは稀です。代わりに、DriverManagerオブジェクトを使用します。このオブジェクトはこの種のオブジェクトを管理し、Driverオブジェクトを使用する際の詳細を抽象化します。
Connection:このインターフェースにはデータベースとの連携に使用されるすべてのメソッドが含まれています。接続オブジェクトは通信コンテキストを表し、データベースとのすべての通信は接続オブジェクトを通じてのみ行われます。
Statement:このインターフェースから作成されたオブジェクトを使用して、SQLステートメントをデータベースに提出できます。ストレージプロシージャの実行以外に、一部の派生インターフェースはパラメータを受け入れます。
ResultSet:SQLクエリを実行するStatementオブジェクトを使用して、これらのオブジェクトはデータベースから取得したデータを保存します。それはイテレータとして機能し、データを巡回することができます。
SQLException: このクラスはデータベースアプリケーションで発生するすべてのエラーを処理します。
java.sqlとjavax.sqlはJDBC 4.0の主要パッケージ。これは本教程を執筆した時の最新のJDBCバージョンです。データソースとのインタラクションに使用される主要なクラスを提供します。
これらのソフトウェアパッケージの新しい機能には以下の変更が含まれています:
自動データベースドライバのロード。
エラーハンドリングの改善。
強化されたBLOB / CLOB機能。
接続とステートメントインターフェースの強化。
国際文字セットのサポート。
SQL ROWIDアクセス。
SQL 2003 XMLデータ型のサポート。
注釈。