前提・実現したいこと
jspでDBに接続してデータの一覧を表で表示させるWEBアプリを作っています。
データのない状態だとHTMLでNULLと表示されるのですが、空白で表示させたいです。
IF文で判定するとNULLのデータを空白にできたのですが、同じ列のデータのある表が表示されなく(データのあるマスだけが消えてずれる感じ)なってしまって困っています。
データのある所はそのまま表示させてないところ(NULL)だけ空白にするにはどうすればよいでしょうか。
該当のソースコード
jsp
1<%@ page pageEncoding="UTF-8" import="java.sql.*" %> 2 3<% 4StringBuffer sb = new StringBuffer(); 5 6Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 7Connection db=DriverManager.getConnection("jdbc:odbc:kanri", "" , "" ); 8 9Statement sql = db.createStatement(); 10ResultSet rs = sql.executeQuery("SELECT * FROM Kanri"); 11 12while(rs.next()) { 13 sb.append("<tr>"); 14 sb.append(" <td>" + rs.getString(1) + "</td>\n"); 15 sb.append(" <td>" + rs.getString(2) + "</td>\n"); 16 sb.append(" <td>" + rs.getString(3) + "</td>\n"); 17 sb.append(" <td>" + rs.getString(4) + "</td>\n"); 18 sb.append(" <td>" + rs.getString(5) + "</td>\n"); 19 sb.append(" <td>" + rs.getString(6) + "</td>\n"); 20 sb.append(" <td>" + rs.getString(7) + "</td>\n"); 21 sb.append(" <td>" + rs.getString(8) + "</td>\n"); 22 sb.append(" <td>" + rs.getString(9) + "</td>\n"); 23 sb.append(" <td>" + rs.getString(10) + "</td>\n"); 24 sb.append(" <td>" + rs.getString(11) + "</td>\n"); 25 sb.append(" <td>" + rs.getString(12) + "</td>\n"); 26 sb.append(" <td>" + rs.getString(13) + "</td>\n"); 27 sb.append(" <td>" + rs.getString(14) + "</td>\n"); 28 sb.append(" <td>" + rs.getString(15) + "</td>\n"); 29 sb.append(" <td>" + rs.getString(16) + "</td>\n"); 30 sb.append(" <td>" + rs.getString(17) + "</td>\n"); 31 sb.append(" <td>" + rs.getString(18) + "</td>\n"); 32 sb.append("</tr>\n"); 33} 34 35sql.close(); 36db.close(); 37%> 38 39<%= sb.toString() %>
試したこと
jsp
1if (rs.getString(2) == null) { 2 sb.append("<td>" + "" + "</td>\n"); 3} 4これで空白になりましたが、日時に入ってたデータが消えて表がずれてしまいました。 5 6 else { 7 sb.append("<td>" + rs.getString(2) + "</td>\n"); 8} 9を入れると何も表示されなくなります。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー