English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

JDBC 紹介

JDBCとは何ですか?

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アーキテクチャ

JDBC APIは、データベースアクセスのための二層と三層の処理モデルをサポートしますが、通常、JDBCアーキテクチャは二層で構成されています-

  • JDBC API: これにより、アプリケーションとJDBCマネージャーの接続が提供されます。

  • JDBC Driver API: これにより、JDBCマネージャーとドライバーの接続がサポートされます。

JDBC APIは、ドライバーマネージャーとデータベース固有のドライバーを使用して、異なるデータベースとの透明な接続を提供します。

JDBCドライバーマネージャーは、各データソースにアクセスするために正しいドライバーを使用することを確保します。ドライバーマネージャーは、複数の異なるデータベースに接続する複数の並行ドライバーをサポートできます。

以下はアーキテクチャ図で、ドライバーマネージャーがJDBCドライバーとJavaアプリケーションに対する位置を示しています-

一般的なJDBCコンポーネント

JDBC APIは以下のインターフェースとクラスを提供します-

  • DriverManager:この管理データベースドライバーのリストです。通信サブプロトコルを使用して、Javaアプリケーションからの接続リクエストを適切なデータベースドライバーにマッチングします。JDBCで特定のサブプロトコルを識別する最初のドライバーが、データベース接続を確立するために使用されます。

  • Driver:このインターフェースはデータベースサーバとの通信を処理します。Driverオブジェクトと直接のインタラクションは稀です。代わりに、DriverManagerオブジェクトを使用します。このオブジェクトはこの種のオブジェクトを管理し、Driverオブジェクトを使用する際の詳細を抽象化します。

  • Connection:このインターフェースにはデータベースとの連携に使用されるすべてのメソッドが含まれています。接続オブジェクトは通信コンテキストを表し、データベースとのすべての通信は接続オブジェクトを通じてのみ行われます。

  • Statement:このインターフェースから作成されたオブジェクトを使用して、SQLステートメントをデータベースに提出できます。ストレージプロシージャの実行以外に、一部の派生インターフェースはパラメータを受け入れます。

  • ResultSet:SQLクエリを実行するStatementオブジェクトを使用して、これらのオブジェクトはデータベースから取得したデータを保存します。それはイテレータとして機能し、データを巡回することができます。

  • SQLException: このクラスはデータベースアプリケーションで発生するすべてのエラーを処理します。

JDBC 4.0パッケージ

java.sqlとjavax.sqlはJDBC 4.0の主要パッケージ。これは本教程を執筆した時の最新のJDBCバージョンです。データソースとのインタラクションに使用される主要なクラスを提供します。

これらのソフトウェアパッケージの新しい機能には以下の変更が含まれています:

  • 自動データベースドライバのロード。

  • エラーハンドリングの改善。

  • 強化されたBLOB / CLOB機能。

  • 接続とステートメントインターフェースの強化。

  • 国際文字セットのサポート。

  • SQL ROWIDアクセス。

  • SQL 2003 XMLデータ型のサポート。

  • 注釈。