QA@IT

Servlet での アラート表示する際に変数も入れたい

2254 PV

DBから読み取った氏名(NAME)にリンククリックで
アラートを表示させようにしました。
アラート表示の際に、
「氏名 : 山田 太郎
メール : taro@aaa」のように、
「氏名:」までは文字で、「山田 太郎」は DB から読み込んだ名前を変数で、
それぞれの名前にアラートを表示させることに苦戦しています。

どのように、修正したらよいでしょうか?

DBの例)

NAME MAIL
ーーーーーーーーーーーーーーーーーー
山田太郎 taro@aaa
山田花子 hanako@aaa

try {
// DBの読み込み
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
conn = DriverManager.getConnection(url, user, pass);
stmt = conn.createStatement();
sql = "SELECT * FROM PERSON";
rs = stmt.executeQuery(sql);
int count = 0; // 件数

        out.println( 
                 "<style type=\"text/css\">.table {border-collapse: collapse;}.table th {background-color: #00ccff;</style>"); 

        out.println( 
                 "<table class=\"table\" border=1><tr><th width=\"210\">氏名</th><th width=\"230\">メールアドレス</th><th width=\"100\"></th></tr>"); 

        // DBの内容を人数分、一覧表にして表示する 
        while (rs.next()) { 
             String name = rs.getString("NAME"); 
             String mail = rs.getString("MAIL"); 
             out.println("<tr><td><a href=\"#\"onclick=\"alert('ここ')\">"); 
             out.println(name); 
             out.println("</a></td><td>"); 
             out.println(mail); 
                             out.println("</a></td>"); 
             count++; 
         } 
         // 件数の表示 
        out.println("<caption align = \"right\">"); 
         out.println("<div align=\"left\">&nbsp;"); 
         out.println(count); 
         out.println("件</div></caption>"); 
         out.println("</table>"); 
         rs.close(); 
         stmt.close(); 
     } catch (ClassNotFoundException e) { 
         out.println("ClassNotFoundException:" + e.getMessage()); 
     } catch (SQLException e) { 
         out.println("SQLException:" + e.getMessage()); 
     } catch (Exception e) { 
         out.println("Exception:" + e.getMessage()); 
     } finally { 
         try { 
             if (conn != null) { 
                 conn.close(); 
             } 
         } catch (SQLException e) { 
             out.println("SQLException:" + e.getMessage()); 
         } 
     } 
     out.println("</form></CENTER>"); 
     out.println("</body>"); 
     out.println("</html>"); 
     out.close(); 
 }
  • catch ブロックでやっている様に文字列の結合を使えば実現できると思います。 -
ウォッチ

この質問への回答やコメントをメールでお知らせします。