じゃば
id を入力して、一致するデータを標準出力する。
各メソッドについては省略。
public static void main(String[] args) { Db DbClass = new Db(); Connection connect = null; ResultSet Testres = null; try { connect = DbClass.DbConnection(); System.out.println("検索したい id を入力"); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = br.readLine(); System.out.println("入力したID : " + str); String sql = SelectSql(str); Testres = DbClass.SelectResult(connect, sql); int i = 0; while (Testres.next()) { // 出力したい列を指定 System.out.println(Testres.getString("NAME")); i++; } // データが1件もなかったとき if (i == 0) { System.out.println("登録されている、id を入力してください。"); } } catch (SQLException sq) { System.out.println("sq" + sq.getMessage()); } catch (Exception ex) { System.out.println("ex" + ex.getMessage()); } finally { try { connect.close(); } catch (Exception ex) { System.out.println("ex : " + ex.toString()); } } }
気になってるのは、最後の finally の中。
単純にconnect.close(); だけ書くと "処理されない例外" という
エラーがでるので try〜catch で囲んでみた。
最初はスロー宣言書いてたけど main でそれをやると意味ないらしい。
close で例外は出ないっての前提に SQLException スローしちゃって
いいのかしら。
だめ?w