Java Gold SE11対策:JDBCとは?最初に理解すべき3つの柱と接続までの流れ

アイキャッチ画像

Java Goldの試験でも、実務でも、JDBC(Java Database Connectivity)の基本を正しく理解しておくことは非常に重要です。
この記事では「JDBCって何?」という導入から、「どうやって接続するのか」までを、初心者でも腹落ちするように整理して解説します。

JDBCって何?

JDBCとは、JavaからRDB(リレーショナル・データベース)にアクセスするための API(インタフェース群) です。

JavaはOSやDBに依存しない設計が特徴ですが、JDBCもその精神を引き継いでいて、

「どのDBでも同じJavaコードで操作できる」

ことを目指しています。
MySQLでもPostgreSQLでもOracleでも、SQLをJavaで発行できるのはこの仕組みのおかげです。

JDBCの3本柱:この3つのインタフェースは覚えよう!

Driver

  • 各DBベンダが提供する「接続の実体」
  • JDBCの橋渡しをするクラスで、MySQL用・PostgreSQL用などがある
  • 通常は com.mysql.cj.jdbc.Driver などのクラス名を使ってロードする

Connection

  • DBとの接続そのもの
  • このインスタンスがないとSQLは送れない
  • 実際のやり取りはここが起点になる

Statement

  • SQLを実行するためのインタフェース
  • 単純なSQLを送るのに使う(後で出てくる PreparedStatement も仲間)

JDBCの接続手順:5ステップで覚える!

Class.forName(“com.mysql.cj.jdbc.Driver”); // ① ドライバ登録

Connection conn = DriverManager.getConnection(…); // ② 接続

Statement stmt = conn.createStatement(); // ③ ステートメント作成

ResultSet rs = stmt.executeQuery(“SELECT …”); // ④ SQL実行

// ⑤ 結果処理 → rs.next() で1行ずつ取得

この中でも重要なポイントを解説します。

Class.forName(…) の役割とは?

JDBCドライバを JVMに認識させて、DriverManagerに登録する 処理です。

Class.forName(“com.mysql.cj.jdbc.Driver”);

この一行があることで、JDBCドライバが「自分はこのURLに対応しています」と自己登録を行います。
これをしないと、後述の getConnection() でどのドライバを使えばいいのか分からず、接続に失敗してしまいます。

✅ Java 6以降(JDBC 4.0〜)では、この登録処理は省略可能
→ ドライバJARの中に META-INF/services/… の設定があれば自動で読み込まれます

ですが、試験では明示的に書けることが重要なので、Class.forName(…) をしっかり覚えておきましょう。

DriverManager.getConnection(…) とは?

Connection conn = DriverManager.getConnection(url, user, password);

これは 実際にDBへ接続し、Connectionインスタンスを返す処理 です。

  • URLの中には接続先情報(ホスト、ポート、DB名など)が含まれます。
  • 登録されたドライバの中から、URLにマッチするドライバが選ばれて使われます。

つまり:

処理役割
Class.forName(…)ドライバを登録(候補リストに追加)
getConnection(…)URLにマッチするドライバを選んで接続

JDBC URLの書き方も試験ポイント

よくある形式(MySQLの場合):

jdbc:mysql://ホスト名:ポート番号/データベース名

例:jdbc:mysql://localhost:3306/sampledb

これも選択肢でよく出てくるので、jdbc:mysql:// という接頭句に違和感がないようにしておきましょう。

最小構成のコード例(Class.forNameあり)

Class.forName(“com.mysql.cj.jdbc.Driver”);

try (Connection conn = DriverManager.getConnection(“jdbc:mysql://localhost:3306/sampledb”, “root”, “password”)) {

    System.out.println(“接続成功!”);

}

try-with-resources で Connection を自動クローズするのもJava Goldの試験で頻出なので、合わせて覚えておきましょう。

まとめ:要点

  • JDBCは JavaとDBをつなぐ橋渡し
  • 押さえるべき3要素 → Driver, Connection, Statement
  • Class.forName(…) でドライバ登録(試験では必須)
  • DriverManager.getConnection(…) で接続開始
  • URL形式やtry-with-resourcesも覚えておく