[Java][MySQL] JavaからMySQLを使う方法

公開日: : 最終更新日:2013/11/29 Java , ,

MySQLは、フリーでありながら商用としても使用できるパワーを持つデータベース(RDB)です。

一般的なアクセス数のサイトであれば、バックエンドのデータベースはこれ一本あれば十分でしょう。

ただし、大企業ポータルサイトレベルのアクセス数がある場合は、Redis等のKVSをキャッシュにしてその裏にRDBを置く等の工夫をしましょう。

それでは、まずはMySQLのインストールから。

インストールはをこちらの記事をご参照ください。
テスト用のテーブル作成はこちらの記事をご参照ください。

JavaからMySQLに接続するためのJDBCドライバを取得します。
●当サイトのこちらの記事を参照してMySQLをインストールした場合
「[インストール先]\MySQL\Connector J x.x.x\」にJDBCドライバのjarがあります。

●それ以外の場合
以下サイトにアクセスしてください。
「http://dev.mysql.com/downloads/connector/j/」

赤丸の「DOWNLOAD」ボタンをクリックします。
MySQL_JDBCドライバ取得01

次に、赤丸の「No thanks, just start my download.」をクリックします。
そうすると、インストーラがダウンロードできるはずです。
それをダブルクリックするとなぜかインストールされています。
MySQL_JDBCドライバ取得02

「C:\Program Files (x86)\MySQL\MySQL Connector J」
ここにインストールされているはずです。

次に、JDBCドライバのjarにクラスパスを通します。
Eclipseでは以下のようにします。(コマンドラインでは「javac -classpath ~~~~」でやります。)

まず、「プロジェクトのプロパティ>ビルドパス>ライブラリ」を開きます。
その後、「外部Jar追加」ボタンをクリックします。
JDBCドライバ_Eclipse設定01

Jarファイルを選択して「選択」ボタンをクリックします。
JDBCドライバ_Eclipse設定02

「OK」ボタンをクリックします。
JDBCドライバ_Eclipse設定03

ここまでで、準備が完了しました。

早速、Javaコードを書いてみます。
適当にJavaクラスを作成し、以下コードをコピペしてみてください。
その後、userとpasswordを正しく設定すると動くと思います。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;


public class TestMySQL {

    public static void main(String[] args) {
        Connection con = null;
        PreparedStatement ps = null;
        String driver = "com.mysql.jdbc.Driver";
        String dbname = "JavaTest";
        String url = "jdbc:mysql://localhost/" + dbname;
        String user = "xxx";
        String passwd = "yyy";

        String sql = "select * from JavaTestTable;";

        try {
            // JDBCドライバ読み込み
            Class.forName(driver);

            // コネクト
            con = DriverManager.getConnection(url, user, passwd);

            // SQL発行
            Statement stmt = con.createStatement();
            ResultSet rs = stmt.executeQuery (sql);

            // 結果照会
            while(rs.next()){
                int id = rs.getInt("id");
                String name = rs.getString("name");
                System.out.println("ID:" + id);
                System.out.println("名前:" + name);
            }

            // クローズ処理
            rs.close();
            stmt.close();
            con.close();

        } catch (ClassNotFoundException e){
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

}

実行結果は以下のようになるはずです。

ID:1
名前:一郎
ID:2
名前:次郎

ただし、今回はサンプルなので省略しましたが、
納品コードを書く際は、ちゃんとfinallyの中でのクローズ処理も行いましょう!!!

以上。

スポンサードリンク

関連記事

no image

[Java][Servlet][JSP] ServletからJSPへの転送

こんにちは。 今回は、「Servletでリクエストを受けて、JSPで表示する。」方法を解説しま

記事を読む

no image

[java] 文字列の一部を切り取る方法(substring)

こんにちは。 今回は文字列の一部を切り取る方法について解説します。 具体的には、String

記事を読む

no image

[Java][基本] ループ処理(for文)

Javaのループ処理の基本である、for文を解説します。 ●文法 for( [①初期化];

記事を読む

no image

[Java][基本] mainメソッドの書き方

こんにちはkeiです。 Javaの基本として、意外と知らないmain関数について解説します。

記事を読む

no image

[Java][Spring] Spring3でDIしてみる!(アノテーション使用)

Spring3を使って、一番基本的な形のプログラムを作成してみます。 今回は、アノテーションを

記事を読む

no image

[Java] Apache POIでExcel操作!

Apache POIをまずは使ってみようという方(自分も含め)のメモ 導入 Maven htt

記事を読む

no image

[Java] クラスとインスタンス

こんにちは。 クラスとインスタンスについて解説します。 インスタンスは「オブジェクト」とも言

記事を読む

no image

[Java] 日付の計算方法(DateFormat、Date、Calendar)

こんにちは、kei0310です。 Javaで日付を計算する方法について解説します。 まず

記事を読む

no image

[Java][Spring] DIする方式を細かく見てみる① @ScopeでのSingletonとPrototypeの指定

今回は@Scopeアノテーションを用いて、オブジェクトをDIする方式を選択してみます。 ●解説

記事を読む

no image

[Java] StringBuilderの使い方(Stringを連結するクラス)

今回は、可変長文字列クラスのStringBuilderを紹介します。 固定長文字列クラスのSt

記事を読む

スポンサードリンク

Message

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

スポンサードリンク

no image
[python] 日付の取り扱い(datetime) 現在日付、計算、文字列変換(format)

現在日付 日付の計算 [crayon-59c6ef3b023f

no image
[python] 文字列結合

pythonでの文字列結合 サンプル

no image
[python] 配列の扱い方

pythonでの配列の扱い方 python 配列の作成

no image
[python] ファイルの読み込み

pythonでのファイルの読み込み方法 基本サンプル

no image
[PHP] 文字列の置換(str_replace)

文字列中の特定文字列を置換する方法 str_replace サ

→もっと見る

  • 2017年9月
    « 8月    
     123
    45678910
    11121314151617
    18192021222324
    252627282930  
  • 2017年9月
    « 8月    
     123
    45678910
    11121314151617
    18192021222324
    252627282930  
PAGE TOP ↑