javaからデータベースにアクセスするには、 JDBC (Java Database Connectivity)が必要です。 JDBCを使う場合は、Javaはそれぞれのデータベースのために用意された ドライバクラスをロードしなくてはいけません。 このドライバクラスはJavaの標準のクラスライブラリには 含まれていないので、自分で入手して、実行時のクラスパスに 置いておかなくてはいけません。
津田塾大学の計算センターの環境ではMySQL-5.1系列にJavaで 通信するためのjarファイルは X:\usrdata\nitta\tomcat\mysql-connector-java-5.1.44-bin.jar として置かれています。cygwinの中でシェルスクリプトを
. x:/usrdata/nitta/tomcat/setpath.shとしてシェルに読み込むと、CLASSPATHに設定されるようになっています。
[注意]サーブレットとして動作するときにも参照できるようにするためには、 ${CATALINA_HOME}/webapps/アプリケーション名/WEB-INF/lib/ の下にjarファイルを置いておく必要があります。
JavaプログラムでJDBCを使う手順は次の通りです。
データベースに1組のデータを記憶させるプログラムは次のようになります。
Statementオブジェクトは、SQL文の特別な文字を自分でエスケープ しなくてはいけないのですが、PreparedStatementオブジェクトを 使うとその必要がないので指定が簡単になる場合があります。
InsertDB.java |
授業で配布するプリントを参照して下さい。 |
InsertDB.javaの実行例 |
$ javac InsertDB.java $ java InsertDB |
データベースからデータを取り出すプログラムは次のようになります。 (津田塾大学計算センターのWindowsでこの SelectDB.class を実行する場合は、 文字化けを避けるためにcygterm を対話環境として使って下さい。)
SelectDB.java |
授業で配布するプリントを参照して下さい。 |
SelectDB.javaの実行例 |
$ javac SelectDB.java $ java SelectDB 1:2011-08-12:あいさつ[山田太郎] こんにちは |