- 締切済み
JSPのタグリブを使ったDBアクセスの基本的な記述
JSPのスクリプトレットを使ってとりあえず以下のコードを書きました。 とりあえず動いています。しかし今っぽく無くダサいので タグリブを使った記述に書き換えようと思っています。 ---------------------- ResultSet rs = st.executeQuery(sql); ResultSetMetaData mdata = rs.getMetaData(); int numberOfColumns = mdata.getColumnCount(); for (int i = 1; i < numberOfColumns + 1; i++) { out.println("\t<tr><th>" + mdata.getColumnName(i)); } while (rs.next()) { out.println("\t<tr>"); for (int i = 1; i < numberOfColumns + 1; i++) { out.println("\t\t<td>" + rs.getString(i)); } } ---------------------- 最終的にはコネクション取得の部分からタグにしたいのですが 取り合えずばループ部分だけでも変更したいと取り組みました。 いろいろダメなところはあるのですが、 下記のコードすらまともにかけていない状態です。 ---------------------- <c:forEach var="i" begin="1" end="2"> ${mdata.columnName(${i})} </c:forEach> ---------------------- とりあえずは引数が必要なgetterの記述側からないのですが 上記の(ダメダメな)タグのコードを無視し意図を汲み取って その先のコードまで教えていただけると大変助かります。 よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- askaaska
- ベストアンサー率35% (1455/4149)
お礼
最初はDoltengを使ってS2+SAStruts+Hibernateとかでやろうと 思っていたのですが逆にいろいろ大変になってしまいやめました。 どうせテーブルは10もなく、画面数も10-20くらいの超極小規模の テスト開発なので、JSPのみで構築することにしました。 sqlタグは最初使っていたのですがよくわかりませんでした。 というかタグが全体的によくわかっていませんでした。 サンプルを見てそれがきっかけでようやくわかったのは <sql:query var="rs" sql="select文" /> で返ってくるrsはResultSetではないということ。 というか、タグリブでは元の良く使うクラスに似た 独自クラスを使う場合があるということ。 それを確認するには、実際に使われているクラスを 確認しながら開発しなければならないこと などがわかりました。 この辺がわかったことにより理解が深まりました。 ありがとうございました。