Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Java

JDBCドライバとは?概要や使い方をご紹介

投稿日:2021年4月21日 更新日:

<目次>

(1) JDBCドライバとは?概要や使い方をご紹介
 (1-1) JDBC及びJDBCドライバとは?
  (1-1) JDBC API
  (1-2) JDBCドライバマネージャー
  (1-3) JDBCドライバAPI
  (1-4) JDBCドライバ
  (1-5) 備考

(1) JDBCドライバとは?概要や使い方をご紹介

Javaを勉強する中で耳にする「JDBCドライバ」についてです。JDBCドライバを説明するにあたって、JDBCとは?についても触れておきます。

(1-1) JDBC API

JDBCは「Java Database Connectivity」の略で、データベースへの接続を扱うためのAPIです。具体的には、DBへの接続、DBへのクエリ発行、クエリ結果の取得といったデータベースに対する各種操作を行う事ができます。

DBも種類が沢山あり、OracleやSQLServer等の商用データベースから、MySQLやPostgreSQL等のオープンソースのものなど幅広く存在するため、それらの間でのインターフェイスを統一し、汎用的に使えるようにする目的で開発されたのが「JDBC」のAPIです。

JDBCを使う事で、Postgreに接続しようが、Oracleに接続しようが、何に接続しようが「常に接続はgetConnectionメソッド」といった具合に統一したルールでDBへのアクセスが可能になります。

JDBCは主に4つの要素から成り立っており、全体像としては次のようになっています。

(図111)

目次にもどる

(1-2) JDBCドライバマネージャー

アプリケーションの開発者が利用するAPIで、定義されている各種インターフェイスを使用してアプリケーションを開発します。代表的なインターフェイスは以下のようなものがあり、これらのインターフェイスは各データベース(Oracle、SQLServer、MySQL)に対応したものが用意されています(後述のJDBCドライバを参照)。

(表)

DriverManager 各DBへのドライバを管理するためのクラスです。代表的な用途が「DriverManager.getConnection()」によるデータベースへの接続の確立です。
(使用例)
Connection conn = DriverManager.getConnection(host,user,pass);
Connection 特定のデータベースに対する各種操作を定義したインターフェイスで、よく使う下記のようなメソッドが定義されています。

・Statement createStatement()メソッド
⇒ConnectionからStatementを発行します。

Statement このインターフェスから作られたオブジェクトを使って、SQLの発行などを行います。
ResultSet このオブジェクトはDBに対してSQLクエリを発行した結果を保持します。

複数のJDBCドライバを管理する役割を担います。具体的な例では、例えば複数のドライバが共存する環境下においてデータに接続する際に、適切なドライバが使用されているか?を保証したりします。

java.sqlパッケージのDriverManagerクラスにて機能提供されており、代表的な用途が「DriverManager.getConnection()」によるデータベースへの接続の確立です。
 
(例)
Connection conn = DriverManager.getConnection(host,user,pass);

 

目次にもどる

(1-3) JDBCドライバAPI

JDBCマネージャー←→JDBCドライバ間で規定されているAPIで、主にJDBCドライバを開発する人たちが利用します。
 

(1-4) JDBCドライバ

JDBC APIで規定されたインターフェイスを使って、各種ベンダーのデータベース(Oracle、SQLServer、MySQLなど)に接続するためのプログラムです。
 
実態はライブラリ(jar)ファイルとして提供されており、OracleやMySQLなどデータベース毎に用意されています。
 
(例)
MySQL:mysql-connector-java-5.1.22-bin.jar
Oracle:ojdbc6.jar

 

目次にもどる

(1-5) 備考

JDBC接続は通常ドライバ経由で直接接続はされず、「コネクションプール」を介して利用される事が多いです。
 
 

Adsense審査用広告コード


Adsense審査用広告コード


-Java

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

JSP/Servletで必須入力チェックを実装する方法+サンプルプログラムや操作動画も紹介

<目次> (1) JSP/Servletで必須入力チェックを実装する方法  (1-1) 必須入力チェックの概要   (1-1-1) 全体の処理フロー   (1-1-2) 必須入力チェック部分の処理フロ …

JavaScriptのオブジェクト(object)の書き方やメソッドを追加する方法

  <目次> (1) JavaScriptのオブジェクト(object)の書き方やメソッドを追加する方法  (1-1) 構文①:オブジェクト作成  (1-2) 構文②:オブジェクトにアクセス …

Javaの動的Webプロジェクト作成での事前設定と雛形Webプロジェクト作成

「動的Webプロジェクト」とはHTMLのような静的ページのみならず、ServletやJSPを用いてWebアプリケーション開発をする際に作成します。本記事ではEclipseにて「動的Webプロジェクト」 …

TwitterのAPIライブラリ(Twitter4j)で「いいね数」や「リツイート数」を取得する方法

<目次> (1) TwitterのAPIライブラリ(Twitter4j)で「いいね数」や「リツイート数」を取得する方法  (1-1) 構文  (1-2) サンプルプログラム (1) TwitterのA …

Twitter APIライブラリ(Twitter4j)を用いてDMを送信する方法

<目次> (1) Twitter APIライブラリ(Twitter4j)を用いてDMを送信する方法  (1-1) 構文  (1-2) 開発者用アカウントの設定変更  (1-3) 認証トークンの再生成 …

  • English (United States)
  • 日本語
Top