データベースからテーブルを取得して、テーブルに入力しようとしています。テーブルは、EditableGrid(http://www.editablegrid.net/en)を使用して編集できます。私は次のようにテーブルに自動的にデータを入力しています:
結果を報告する
<table id="htmlgrid" border="1">
<!-- column headers -->
<tr>
<c:forEach var="columnName" items="${result.columnNames}">
<th><c:out value="${columnName}" /></th>
</c:forEach>
</tr>
<!-- column data -->
<c:forEach var="row" items="${result.rowsByIndex}">
<tr>
<c:forEach var="column" items="${row}">
<td><c:out value="${column}" /></td>
</c:forEach>
</tr>
</c:forEach>
</table>
結果は次のように取得されます。
c = ConnectionManager.getConnection();
ps = c.prepareStatement("select * from test_persons",
ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
rs = ps.executeQuery();
Result result = ResultSupport.toResult(rs);
request.setAttribute("result", result);
RequestDispatcher rd = request
.getRequestDispatcher("/display.jsp");
rd.forward(request, response);
EditableGridを使用するには、trタグにIDが必要です。次に例を示します。
<tr id="R1">
<td>Duke</td>
<td>Patience</td>
<td>33</td>
<td>1.842</td>
<td>uk</td>
<td>patience.duke@gmail.com</td>
<td>false</td>
<td>11/12/2002</td>
</tr>
<tr id="R2">
<td>Rogers</td>
<td>Denise</td>
<td>59</td>
<td>1.627</td>
<td>us</td>
<td>rogers.d@gmail.com</td>
<td></td>
<td>07/05/2003</td>
</tr>
jstlを使用してタグを自動的に挿入するにはどうすればよいですか?データベースは、クエリに応じて任意の数の行を返す場合があります。これは可能ですか?または、結果セットからテーブルにデータを入力して編集可能にする(後でデータベースを更新するため)ためのより良いソリューションはありますか。