DataBaseに接続 (JDBC & JSP)

データを検索


  1. 「ボタンを押すとデータベースへ接続するページ」を作る。
    作るファイルは2つ
    ファイル名 機能
    jsp_database.html 入力フィールドと「データを検索」ボタンを配置したページ
    jsp_select_data.jsp をデータベースからデータを検索するJSP
    idを指定し、一致したものを表形式で表示する。
    id=0のときは、全てのデータを表形式で出力する。
    失敗したときは"Data selection fail"

  2. 入力フィールド
    データの入力には、inputタグを使う。typeはtext。
    nameは任意の名前を付けてよいが、可読性を考慮し、フィールド名と同じにする。
    内容 データベース 入力ページ
    フィールド名 tag type name 入力する値
    出席番号 id int input text id 整数

  3. 「データを検索する」ボタン
      <form method="POST" action="http://localhost:8080/jsp_database/jsp_select.jsp">
        <fieldset>
        <legend>データを検索する</legend>
        出席番号 <input size="20" type="text" name="id"><br>
        <input type="submit" value="データを検索する">
        </fieldset>
      </form>
      
    JSPをjsp_database.htmlからみた相対パスで記述する場合、http://localhost:8080/jsp_database/は不要です。
  4. データを検索するJSP
    【注意】
    <%@ page contentType="text/html; charset=UTF-8" %>
    <%@ page import="java.sql.*" %> 
    <html>
    <head>
      <title>DataBaseに接続 (JDBC & JSP)データを検索する</title>
    </title>
    <%
        String msg="" ;
        try {
          String id   = request.getParameter("id")   ;// 出席番号を取得
    
          Class.forName("org.postgresql.Driver");
          Connection con = DriverManager.getConnection( "jdbc:postgresql://10.30.2.29:5432/j00300_02","j00300","xxxxxxxx") ;
          Statement st = con.createStatement() ;
          String sql ;
          if (id.equals("0")) {
            sql = "SELECT * FROM sample_02 ;" ;
          } else {
            sql = "SELECT * FROM sample_02 WHERE id=" + id +  ";" ;
          }
          ResultSet rs = st.executeQuery(sql) ;
    
          msg  = "<table border=\"1\"><tr><td>id</td><td>name</td></tr>" ;
          
          while(rs.next()) {
            msg += "<tr>";
            msg += "<td>" + rs.getString("id")   + "</td>";
            msg += "<td>" + rs.getString("name") + "</td>" ;
            msg += "</tr>" ;
          }
          msg += "</table>" ;
    
        }
        catch (Exception ex) {
          msg = "Data selection fail.<br>" ;
          msg += ex.toString();
          msg += "<br>" ;
          //msg += "id="+ id + "&amp; name=" + name ;
        }
    %>
    
    <body>
    <h1>DataBaseに接続 (JDBC &amp; JSP)データを検索する</h1>
    <hr>
    <%= msg %><br><br>
    <hr>
    <a href=jsp_database.html>DataBaseに接続 (JDBC & JSP)</a>
    </body>
    </html>

eclipse logoEclipse DataBaseに接続 (JDBC & JSP)