ぬ
PostgreSQLで作成したデータベースにJavaから接続できました。
PostgreSQLのインストールや、PostgreSQLでのデータベース作成はまあ問題なくいけたんですが、JDBCドライブのインストール関連のとこで何か手間取ったので備忘録として残します。
STEP1:JDBCドライブをインストールする
解凍するとpostgresql-〇.〇.〇.jarといった名前のファイルができる。
*** STEP2:JDBCドライブのjarファイルを、Eclipseのプロジェクト直下に「lib」という名前のフォルダを作りそこに入れる。
STEP3:Eclipseのプロジェクトのビルド・パスの構成にJDBCドライブのjarファイルを追加する。
プロジェクト名のとこで右クリック→「ビルド・パス」→「ビルド・パスの構成」を選択。「ライブラリー」より「外部JARの追加」でJDBCドライブのjarファイルを追加する。追加するとEclipseのプロジェクト内に「参照ライブラリー」が出来てる。
7/10修正:JDBCドライブのjarファイルを、動的Webプロジェクトを追加したアプリケーションサーバーのlibフォルダ上に置いておくことでJavaプログラムからPostgreSQLが利用できました。たとえば自分の環境では、動的Webプロジェクトに追加したサーバーがtomcat9だったので、C:\pleiades\tomcat\9\libにjarファイルを設置。
今回書いたJavaのコードは以下の通り。
データベース名"school"に、身長(height)、名前(name)の2つのカラムを持つテーブル"student"を作成し、全てのレコードを取り出して出力させています。ちなみにこちらの記事に記載されたコードのほぼ丸写しです。
qiita.com
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class PostgreExample { public static void main(String[] args){ Connection conn = null; PreparedStatement pstmt = null; ResultSet rSet = null; String url = "jdbc:postgresql://localhost:5432/school"; // データベース"school" String user = "postgres"; String pass = "password"; try { conn = DriverManager.getConnection(url, user, pass); pstmt = conn.prepareStatement("select * from student"); // studentというテーブルの要素を取り出す rSet = pstmt.executeQuery(); while(rset.next()) { String height = rSet.getString("height"); String name = rSet.getString("name"); System.out.println("身長:" + height); System.out.println("名前:" + name); } } catch (SQLException e) { e.printStackTrace(); } } }