0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Java】MacでのMySQLとEclipseの連携について

Posted at

はじめに

javaの学習を進めており、データベースを活用した開発の学習をしたいので、まずはデータベース連携からテーブルの作成をしていきたいと思います。
DBには多くの種類がありますが、今回はMySQLでEclipseと連携します。

前提

・Mac(Homebrew導入済み)
・Eclipse導入済み(Java 17などでOK)
・Javaプロジェクトの作成は済み(まだでも後で説明する)

手順

1 MySQLのインストールと起動

まずはターミナルを起動して、以下のコマンドを入力して下さい。MacではHomebrewというパッケージ管理ツールを活用して、MySQLのソフトを入れます。

ターミナル
brew install mysql

次にMySQLサーバを起動するのですが、バックグラウンドで常駐するために以下のコマンドを入力してください。

ターミナル
brew services start mysql

基本的にはバックグラウンドの常時起動で問題はないのですが、Dockerを併用によるポートの競合や、社内制限が厳しく必要な時のみ起動したい場合などは以下のコマンドで手動切り替えにすることも可能です。

ターミナル
brew services stop mysql
mysql.server start  # 手動で起動
mysql.server stop   # 手動で停止

MySQLの起動ができたら、次にログインをします。以下のコマンドを入力してください。

ターミナル
mysql -u root -p

上記のコマンドの解説です。

「mysql」はクライアントツールを起動させるコマンド
「-u root」はユーザ名をroot(管理者権限)に指定する
「-p」はパスワードを後から入力する指定
「-p」の後にすぐパスワードを書けるが、ログにパスワードが残るため、セキュリティ上の理由で推奨されていません。

また、パスワードが必要な方は以下のコマンドで必要に応じてパスワードをつけてください。

ターミナル
ALTER USER 'root'@'localhost' IDENTIFIED BY 'ここは各自のパスワード';
ターミナル
FLUSH PRIVILEGES;

2 データベースとテーブルの作成

基本的なSQLコマンドの解説は今回省略して、流れについて説明していきます。ここで使用するデータベース及びテーブルはサンプルなので、実際に操作しながら理解したい方は一緒に進めてください。

①データベースの作成

ターミナル
create database testdb;

②使用するデータベースの選択

ターミナル
use testdb;

③テーブルの作成

ターミナル
create table users (
    id int auto_increment primary key,
    name varchar(50),
    email varchar(100)
);

④テーブル一覧を確認

ターミナル
show tables;

⑤カラム構造を確認

ターミナル
desc users;

3 JDBCドライバの導入とEclipseの連携

①JDBCドライバをダウンロード

こちらのページを開き、「Platform Independent」版を選択してください。
ZIPの方の「Download」ボタンをクリックして、ダウンロードして下さい。また、アカウント登録はスキップができます。(ページ下のNo thanks〜をクリック)

②EclipseでJDBC環境構築
設定対象のプロジェクトを右クリック⇨新規⇨フォルダを選択。
フォルダ名に「lib」と入力し、完了ボタンを押下。
スクリーンショット 2025-07-21 17.50.06.png

先ほど、①でダウンロードしたフォルダから、jarファイルをlibフォルダの中にコピーする。
スクリーンショット 2025-07-21 17.54.21.png

次に、プロジェクトを右クリック⇨プロパティーを選択し、左メニューのJavaのビルド・パス⇨ライブラリー⇨クラスパス⇨JARの追加ボタンを順番に押下。
スクリーンショット 2025-07-21 17.57.52.png
そこで、プロジェクト>libフォルダ>〇〇.jarを選択し、「OK」ボタンを押下。
スクリーンショット 2025-07-21 19.14.01.png
クラスパスに追加されていることを確認して、「適用して閉じる」を選択。

4 JavaでMySQLに接続するコード

以下のコードを貼り付けて、無事実行されたら、完了!!
お疲れ様でした!

Main.java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class Main {
    public static void main(String[] args) {
        // 接続情報(あなたの設定に合わせて変更OK)
        String url = "jdbc:mysql://localhost:3306/testdb?serverTimezone=Asia/Tokyo";
        String user = "root";
        String password = "あなたの設定したパスワード";

        try {
            // データベースへ接続
            Connection conn = DriverManager.getConnection(url, user, password);
            System.out.println("✅ 接続成功!");

            // SQLの実行
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT * FROM users");

            // 結果の表示
            while (rs.next()) {
                int id = rs.getInt("id");
                String name = rs.getString("name");
                String email = rs.getString("email");

                System.out.println("ID: " + id);
                System.out.println("名前: " + name);
                System.out.println("メール: " + email);
                System.out.println("--------------");
            }

            // 接続を閉じる
            conn.close();

        } catch (Exception e) {
            System.out.println("❌ エラー発生: " + e.getMessage());
            e.printStackTrace();
        }
    }
}

javaとeclipseを接続させることはできたので、次は最後に接続のために書いたコードを理解していきたいと思いました。最後まで閲覧いただき、ありがとうございました!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?