【3/18〜】Amazon、VMwareが語る『クラウドの未来』 スラッシュドット    はてなブックマーク  Yahoo!ブックマークに登録  印刷


   JDBCの基礎知識

JDBCとは何でしょうか?

テンアートニ 浅井秀一
2001/5/29

 JDBCとはJava Database Connectivityの略で、Javaアプリケーションからデータベースを操作するAPIのことです。JDKのコアAPIとしてjava.sqlパッケージに実装されています。JDBCは以下のような特徴を持っています。

●DBMSに非依存である
 JDBCは、Javaアプリケーションから使用するJDBCドライバマネージャと、DBMSに依存するJDBCドライバを分けることにより、DBMSに依存しない環境を提供しています。

●高機能で洗練されたメソッド
 JDBCは比較的低レベルのAPIといわれていますが、高機能で洗練されたメソッドが提供されているので、容易にプログラムを記述することができます。また、標準的なSQLを実行するメソッドを持っているのでDBMSに依存しない開発が可能になります。

●既存のデータ資産を利用可能
 主要なDBMSベンダからJDBCドライバが提供されているので、すでにあるデータ資産を加工することなく利用できます。

 JDBCの基本構成図は以下のようになります。

 それでは、各構成要素について説明していきましょう。

■JDBC API
 JDBC APIはアプリケーションとJDBCドライバマネージャとの接続インターフェイスです。

  • JavaプログラムからDBサーバへ接続する
  • SQL文を組み立て、DBサーバで実行させる
  • DBサーバが処理した結果を取り出す
  • DBの情報、処理結果に関する情報などを取り出す

 などの機能を実行するためのインタ ーフェイスが提供されています。

■JDBCドライバマネージャ
 JDBCドライバマネージャはJDBCアーキテクチャの中核をなすモジュールで、JavaアプリケーションとJDBCドライバの接続を供給します。

■JDBCドライバAPI
 JDBCドライバAPIはJDBCドライバマネージャと、各DBMSベンダから提供されるJDBCドライバとの接続インターフェイスです。

■JDBCドライバ
 JDBCドライバとDBMSの接続を提供するモジュールです。通常、JDBCドライバは各DBMSベンダから提供され、DBMSとの接続形態により4種類に大別できます。詳しくは「JDBCドライバの種類と使い分けを教えてください」を参照してください。

 このようにJDBCは、Javaアプリケーションから使用するJDBCドライバマネージャと、DBMSに依存するJDBCドライバを分けることにより、DBMSベンダに依存しない環境を提供しています。

  Java言語でJDBCを使用すれば、プラットフォームにも、DBMSベンダにも依存しない、システム開発が可能になるのです。

「Java Solution FAQ」


ホワイトペーパーTechTargetジャパン

Java Solution フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

スキルアップ/キャリアアップ(JOB@IT)

- PR -
- PR -

お勧め求人情報

キャリアアップ 〜JOB@IT
@IT Special -PR-
  上司や部下、部署内メンバーとの情報共有
を“ガラッ”と変えるコラボツールとは?

New!
  おばかアプリ選手権、第4弾開催中!!
ムダにカッコよくてくだらない作品求ム!

  社内ファイルサーバを“クラウド”に統合
VPN直結「クラウド型ストレージ」を紹介

  Twitterのアカウントはなぜ突破された?
メールによる新手の攻撃手法とその対策

  もう仮想化のお試しフェイズは終わりだ!
Hyper-V 2.0が基幹システムも仮想化

  美人!? まあまあ? 気になる いやし系!!
PV急増で「美人時計」がとった手段とは?

  クライアント企業から求められる人材
⇒IT技術と経営戦略を併せ持つ「戦略家」

  .NET編集長が実践する「技術情報検索術」
サンプル・コードを簡単に探す“技”は?

  業務効率と情報セキュリティ対策を両立!
手間なく確実に機密情報を守る方法とは?

  直属上司が海外にいるのエンジニアに見る
【実例】場所に捉われないワークスタイル

  進化を続ける富士通ストレージETERNUS DX
製品開発者の自信を裏付けるものとは何か

  運用管理の課題を“2つの観点”から分析
ユーザー満足度の高い「仮想環境」とは?

  【CTC事例】約30の基幹システムを統合!
膨大なバッジジョブを制御した方法は?

  仮想化すればコストは削減できるか?
仮想化に必要な「3つの視点」を解説する

  その数、なんと400台以上! グループ内
サーバの「統合管理」によるメリットは?