【2025年最新版】JavaとMySQLを連携してデータベース操作する方法|JDBC入門

JavaでMySQLを操作するには「JDBC(Java Database Connectivity)」という仕組みを使います。本記事では、環境構築から基本的なSQL操作(SELECT・INSERT・UPDATE・DELETE)まで、実務にも使えるレベルで分かりやすく解説します。


この記事でわかること

  • JavaとMySQLの連携方法(JDBCの使い方)
  • ドライバ設定・接続処理の手順
  • SQL文を実行する基本コード(SELECT, INSERTなど)
  • 実務でも使える例外処理・接続管理のコツ

1. JDBCとは?Javaでデータベース操作を可能にする仕組み

JDBC(Java Database Connectivity)は、JavaからMySQLなどのデータベースにアクセスするためのAPIです。

Java ➝ JDBC ➝ MySQL
という流れで接続・データ操作が可能になります。


2. 環境構築手順(Java+MySQL)

必要なもの

ツール推奨バージョン
Java SDK17以上
MySQL Server8.0以上
JDBCドライバmysql-connector-j-8.x.x.jar

JDBCドライバの入手

公式サイトまたはMavenから取得できます。
Maven使用例(pom.xmlに追加)

<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-j</artifactId>
  <version>8.3.0</version>
</dependency>

3. JavaとMySQLの接続コード(基本形)

以下のコードは、MySQLに接続する基本的なJDBC処理の流れです。

import java.sql.*;

public class JdbcConnectSample {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/sampledb";
        String user = "root";
        String password = "your_password";

        try (Connection conn = DriverManager.getConnection(url, user, password)) {
            System.out.println("接続成功!");
        } catch (SQLException e) {
            System.out.println("接続失敗: " + e.getMessage());
        }
    }
}

ポイント: try-with-resources構文で自動クローズを実現しています。


4. SQL実行の基本コード

SELECT(データ取得)

String sql = "SELECT id, name FROM users";
try (Statement stmt = conn.createStatement();
     ResultSet rs = stmt.executeQuery(sql)) {

    while (rs.next()) {
        int id = rs.getInt("id");
        String name = rs.getString("name");
        System.out.println(id + ": " + name);
    }
}

INSERT(データ追加)

String sql = "INSERT INTO users (name) VALUES (?)";
try (PreparedStatement pstmt = conn.prepareStatement(sql)) {
    pstmt.setString(1, "山田太郎");
    pstmt.executeUpdate();
}

PreparedStatementを使うとSQLインジェクション対策にも有効!


5. 実務での注意点:例外処理と接続の管理

例外処理のベストプラクティス

catch (SQLException e) {
    e.printStackTrace(); // ログ出力に切り替えてもOK
    // 業務的エラー対応処理などもここに入れる
}

接続のクローズ忘れに注意

try-with-resourcesを使えば自動でcloseされるため、忘れやミスが減ります。


6. よくあるエラーと対処法

エラー内容原因対処法
ClassNotFoundExceptionドライバの読み込み忘れMavenで依存追加/JAR導入
Access denied for userパスワード・ユーザー名誤り権限とユーザー設定を確認
Communications link failureポート/ホスト設定ミスlocalhost3306の確認

7. おわりに:JDBCはJava×DB開発の基本スキル

JDBCをマスターすれば、業務システム開発や個人アプリ開発でも大きな武器になります。次のステップとしては、以下のような技術もおすすめです:

  • Spring Boot+JPAによるORM化
  • コネクションプールの導入(HikariCPなど)
  • DBトランザクション管理の理解

補足:サンプルデータベースとテーブル作成SQL

CREATE DATABASE sampledb;
USE sampledb;

CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(100) NOT NULL
);
タイトルとURLをコピーしました