※以下はJava開発環境構築1~5が終わった前提で話を進めている。
JavaプログラムからMySQLとの接続
〇Javaアプリケーションから、MySQLにJDBCを利用してアクセスするにはJDBCドライバが必要。
〇JDBCドライバは以下の場所に配置されている。
C:\Program Files (x86)\MySQL\Connector J 5.1\mysql-connector-java-5.1.49-bin.jar
〇これをSampleWeb0002プロジェクトのWebContent/WEB-INF/libフォルダにコピーする。(Javaリソース/ライブラリー/Web AppライブラリーフォルダにもJDBCドライバが追加されているはず)
〇接続用クラスの作成
データベースと接続し、コネクションを取得するクラスを作成。mainメソッドも作成し、それを使って実際にデータを取り出すテストをしてみる。
SampleWeb0002プロジェクトのJavaリソース/srcのhogeパッケージに新規クラスConnectionManagerを以下のように作成する。
〇ConnectionManager
package hoge;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* シンプルなコネクション管理クラス
*/
public class ConnectionManager {
/**
* JDBCドライバのクラス名
*/
final static String DRIVER = “com.mysql.jdbc.Driver”;
/**
* データベースのURL
*/
final static String URL = “jdbc:mysql://localhost/mydb”;
/**
* データベースのユーザー
*/
final static String USER = “root”;
/**
* データベースのパスワード
*/
final static String PASS = “hoge”;
/**
* Connectionを取得
*/
public static Connection getConnection()
throws SQLException {
try{
Class.forName(DRIVER);
} catch (ClassNotFoundException e) {
e.printStackTrace();
throw new IllegalStateException (
“fail to class load : ”
+ e.getMessage());
}
Connection con = DriverManager.getConnection(URL, USER, PASS);
return con;
}
/**
* 接続確認テスト
*/
public static void main(String[] args) throws SQLException {
Connection con = getConnection();
Statement smt = con.createStatement();
ResultSet rs = smt.executeQuery(“select * from account”);
while(rs.next()){
String s = “NAME=” + rs.getString(“NAME”)
+ “,MONEY=” + rs.getString(“MONEY”) ;
System.out.println(s);
}
smt.close();
con.close();
System.out.println(“END”);
}
}
〇接続確認のためにJSPからデータベースにアクセスする。
select_sample.jspという名前のファイルをWebContent直下に作成する。
<%@page contentType="text/plain; charset=Windows-31J"%>
<%@page import="hoge.ConnectionManager, java.sql.*"%>
<%
try{
Connection con = ConnectionManager.getConnection();
Statement smt = con.createStatement();
ResultSet rs = smt.executeQuery("select * from account");
while(rs.next()){
String s = "NAME=" + rs.getString("NAME")
+",MONEY=" + rs.getString("MONEY");
out.println(s);
}
smt.close();
con.close();
}catch(SQLException e){
e.printStackTrace();
}
%>
Tomcatを起動し、ブラウザで
http://localhost:8080/SampleWeb0002/select_sample.jsp
にアクセスして、
NAME=サンディー,MONEY=3000
NAME=パトリック,MONEY=2000
NAME=ボブ,MONEY=1000
が表示されれば、OK。
※Java開発環境構築1でインストールした「JDK」「Eclipse」「Tomcat」「MySQL」が連携できることを確認しました。
【引用文献】
JavaデベロッパーのためのEclipse完全攻略[4.x対応版]
石黒 尚久 (著), 永井 正昭 (著), テクニカル書籍編集部 (著)