
コンボボックスやリストボックスに
データベースの値で設定するときについて疑問があります。
現システムでは
JSP内でsqlタグを使ってレコードセットを取得し
<core:forEach>でぐるぐるまわして値をセットしています。
↓こんな感じです。
-----------------------------------------------------------
<sql:setDataSource var="db" dataSource="jdbc/xxxxx" />
<sql:query var="rs" dataSource="${db}" >
SELECT * FROM XXXXX
</sql:query>
<select name="xxxxx">
<c:forEach var="row" items="${rs.rows}" >
<option value="${row['xxxxx']}"
<c:if test="${row['xxxxx'] == requestScope.xxxxx}" > selected </c:if>
>${fn:escapeXml(row['xxxxx'])}</option>
</c:forEach>
</select>
-----------------------------------------------------------
これでもちゃんと動いてるのですがMVCを考えるとJSP内でDB接続って疑問に感じます。
Sevletでコンボボックスに必要な値を取得しておいてリクエスト属性にセットし
JSP内では変数をぐるぐる回すことも考えたのですが、
コンボボックスやリストボックスの数が増えたり面倒に思います。
コンボボックスやリストボックスに値を設定する場合は
どういう方法がよいのでしょうか?
No.2ベストアンサー
- 回答日時:
>今回はStrutsを使えません。
>その場合は!?
ちょっと言葉足らずでしたね。
----前回の回答--------------
DAOからSQLの結果のデータセットを返して、
Servletでデータセットをリクエストにセットして、
JSPでリクエストからデータセットを使用するのが普通?なのかな。
----前回の回答--------------
とStrutsは別です。
ちょっと細かく書くと…
DBとやりとりするクラスから、SQLの処理結果を、たとえばHashMapとかにセットして、Servletに返します。
Servletはリクエストやセッションに上記HashMapなどをセットしてレスポンスを返します。
で、JSPではリクエストorセッションからHashMapなどを取得して、そこからSQLの処理結果を取得→表示する。
こんな感じが普通だと(少なくとも自分は)思っています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
wsprintf関数の使い方について
-
C言語の変数(LSB)の合わせ込...
-
matchesを否定文として使う方法...
-
文字列生成を総当りで行う場合
-
JSPでHashMap・配列の変数の値...
-
PSQLExceptionが発生する
-
Evaluate()に文字列の形式の数...
-
DateTimePickerに値を入れたい...
-
VB.NET+Javascriptで、VB.NETで...
-
コンテンツダウンロード時のプ...
-
hiddenの値を消したくない!
-
結合した文字列をファイル名に...
-
-1.#IND00を検知する方法
-
ダブルクォーテーションを含む...
-
BCD形式で時刻を!
-
特定の文字列を複数抜き出した...
-
IF関数でEmpty値を設定する方法。
-
変数を動的に利用するには?
-
オブジェクトの中のプロパティ...
-
System.err. printlnとSystem.o...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ダブルクォーテーションを含む...
-
wsprintf関数の使い方について
-
JSPでの計算結果表示
-
C言語の変数(LSB)の合わせ込...
-
JSPでHashMap・配列の変数の値...
-
DateTimePickerに値を入れたい...
-
javaのCSVデータ読込についてです
-
hiddenの値を消したくない!
-
実行シェルからCOBOLへパラメー...
-
DOSバッチで変数の値を変数名に...
-
日付や時刻の"01"を" 1"に変換...
-
結合した文字列をファイル名に...
-
PSQLExceptionが発生する
-
excel vba 時間計算と条件分岐...
-
ArrayListの要素数の上限
-
ResultSetの内部構造(Java)
-
JavaScriptの変数の値が消える!?
-
Evaluate()に文字列の形式の数...
-
matchesを否定文として使う方法...
-
String型の値が大文字か小文字...
おすすめ情報