前提・実現したいこと
開発環境 Java11 DB:postgreSQL IDE:Eclipse
javaにてpostgreSQLに接続しデータを取ってくる。
WEBページのログイン機能を実装するためDAOクラスを作成し、データベース(DB名:instagram テーブル名:iuser)からデータをとってこようとしているのですが、DBに接続の段階でエラーが発生しています。JDBCドライバはWEB-INF/libに配置しています。SQL文にも問題はないので原因がわかりません。
発生している問題・エラーメッセージ
org.postgresql.util.PSQLException: SSL接続のセットアップ中に、エラーが起こりました。
###ソースコード
java
1package dao; 2 3import java.sql.Connection; 4import java.sql.DriverManager; 5import java.sql.PreparedStatement; 6import java.sql.ResultSet; 7import java.sql.SQLException; 8import java.sql.Statement; 9import java.util.ArrayList; 10import java.util.HashMap; 11import java.util.Map; 12 13import model.User; 14 15public class UserDAO { 16 // データベース接続に使用する情報 17 final String URL = "jdbc:postgresql://localhost:8080/instagram"; 18 final String USER = "postgres"; 19 final String PASSWORD = "test"; 20 public User disp(String id) { 21 User user = null; 22 try { 23 /* postgreSQL接続に使用する情報*/ 24 Connection con = null; 25 Statement st = null; 26 ResultSet rs = null; 27 28 /* 2) JDBCドライバの定義 */ 29 Class.forName("org.postgresql.Driver"); 30 31 /* 3) PostgreSQLへの接続 */ 32 con = DriverManager.getConnection(URL, USER, PASSWORD); 33 st = con.createStatement(); 34 35 /* select文の準備*/ 36 String sql = "SELECT user_id, password FROM iuser where user_id = ? ; "; 37 PreparedStatement pStmt = con.prepareStatement(sql); 38 pStmt.setString(1, id); 39 40 //sql文を実行し結果表を取得 41 rs = pStmt.executeQuery(); 42 43 //取得したデータでUserインスタンス(java beans)を生成 44 String user_id = rs.getString("user_id"); 45 String password = rs.getString("password"); 46 user = new User(user_id, password); 47 48 // PostgreSQLとの接続を切断 */ 49 rs.close(); 50 st.close(); 51 con.close(); 52 53} catch (Exception e) { 54 System.out.println("DBアクセス時にエラーが発生しました。"); 55 e.printStackTrace(); 56 } 57 return user; 58} 59
回答1件
あなたの回答
tips
プレビュー