Jdbc-introduction
JDBC-はじめに
JDBCとは
JDBCは* J ava D ata b ase C * onnectivityの略で、Javaプログラミング言語と広範囲のデータベース間のデータベースに依存しない接続のための標準Java APIです。 。
JDBCライブラリには、データベースの使用に一般的に関連付けられている、以下で説明する各タスクのAPIが含まれています。
- データベースへの接続を作成します。
- SQLまたはMySQLステートメントの作成。
- データベースでSQLまたはMySQLクエリを実行します。
- 結果のレコードの表示と変更。
基本的に、JDBCは、基礎となるデータベースへのポータブルアクセスを可能にするインターフェイスの完全なセットを提供する仕様です。 Javaは、などの実行可能ファイルのさまざまなタイプを記述するために使用することができます-
- Javaアプリケーション
- Javaアプレット
- Javaサーブレット
- Java ServerPages(JSP)
- エンタープライズJavaBean(EJB)。
これらの異なる実行可能ファイルはすべて、JDBCドライバーを使用してデータベースにアクセスし、保存されたデータを利用できます。
JDBCはODBCと同じ機能を提供し、Javaプログラムにデータベースに依存しないコードを含めることができます。
前提条件
さらに移動する前に、次の2つの主題を十分に理解する必要があります-
- リンク:/java/index [コアJAVAプログラミング]
- リンク:/mysql/index [SQLまたはMySQLデータベース]
JDBCアーキテクチャ
JDBC APIは、データベースアクセスのために2層および3層の両方の処理モデルをサポートしますが、一般に、JDBCアーキテクチャは2つの層で構成されます-
- * JDBC API:*これは、アプリケーションからJDBCマネージャーへの接続を提供します。
- * JDBCドライバーAPI:*これはJDBCマネージャーからドライバーへの接続をサポートします。
JDBC APIは、ドライバーマネージャーとデータベース固有のドライバーを使用して、異種データベースへの透過的な接続を提供します。
JDBCドライバーマネージャーは、各データソースへのアクセスに正しいドライバーが使用されるようにします。 ドライバーマネージャーは、複数の異種データベースに接続された複数の同時ドライバーをサポートできます。
以下は、JDBCドライバおよびJavaアプリケーションに関するドライバマネージャの場所を示すアーキテクチャ図です-
一般的なJDBCコンポーネント
JDBC APIは、次のインターフェイスとクラスを提供します-
- * DriverManager:*このクラスは、データベースドライバーのリストを管理します。 通信サブプロトコルを使用して、Javaアプリケーションからの接続要求を適切なデータベースドライバーと一致させます。 JDBCの下で特定のサブプロトコルを認識する最初のドライバーは、データベース接続を確立するために使用されます。
- *ドライバー:*このインターフェイスは、データベースサーバーとの通信を処理します。 ドライバーと直接やり取りします オブジェクトはめったにありません。 代わりに、このタイプのオブジェクトを管理するDriverManagerオブジェクトを使用します。 また、Driverオブジェクトの操作に関連する詳細を抽象化します。
- *接続:*データベースに接続するためのすべてのメソッドを備えたこのインターフェース。 接続オブジェクトは通信コンテキストを表します。つまり、データベースとのすべての通信は接続オブジェクトのみを介して行われます。
- * Statement:*このインターフェイスから作成されたオブジェクトを使用して、SQLステートメントをデータベースに送信します。 一部の派生インターフェイスは、ストアドプロシージャの実行に加えてパラメーターを受け入れます。
- * ResultSet:*これらのオブジェクトは、Statementオブジェクトを使用してSQLクエリを実行した後、データベースから取得したデータを保持します。 データを移動するためのイテレータとして機能します。
- * SQLException:*このクラスは、データベースアプリケーションで発生したエラーを処理します。
JDBC 4.0パッケージ
java.sqlおよびjavax.sqlは、JDBC 4.0の主要なパッケージです。 これは、このチュートリアルを書いている時点での最新のJDBCバージョンです。 データソースとやり取りするための主要なクラスを提供します。
これらのパッケージの新機能には、次の領域の変更が含まれます-
- データベースドライバーの自動読み込み。
- 例外処理の改善。
- 拡張されたBLOB/CLOB機能。
- 接続およびステートメントインターフェイスの強化。
- 各国語文字セットのサポート。
- SQL ROWIDアクセス。
- SQL 2003 XMLデータ型のサポート。
- 注釈。