8

ServletRequest に setAttribute メソッドがある理由がわかりません。例:1つのテキストボックスと送信ボタンを含むjspページがある場合...

私の目的は、送信時に自分の名前がそのテキストボックスに表示されるようにすることです。ここで質問: そのテキスト ボックスに表示されるものは、サーブレットからの応答ですよね?

しかし、サーブレット部分での私の割り当てでは、request.setAttribute("name","abc"); と書かれていました。

jsp側で:
それは書かれていました:<input type="text" value = < %request.getAttribute("name")% > >

javadocs では、リクエスト内で setattribute があることを知っていますが、なぜ応答していないのですか?

4

3 に答える 3

6

レスポンスの属性を設定しても意味がないと思うからです。ホテルに行き、昼食を注文することができます。これがリクエストで、ランチに欲しいもの、それがリクエストの属性です。しかし、料理の質、つまりレスポンスは完全にホテル(サーバー)に依存します。同様に、Web サーバーがブラウザーへの HTTP 要求に応答する場合、応答は通常、ステータス行、いくつかの応答ヘッダー、およびドキュメント (JSON データなどの任意のもの) で構成されます。したがって、response.setAttribute がある場合、つまりブラウザの名前を Mozilla から Chrome に変更できることを意味しますが、それは正気ではありません。

于 2013-05-25T08:32:33.217 に答える
4

彼らが request.setAttribute(Object, Object) と言うとき、属性のスコープはそのリクエストのみであり、属性は後続のリクエストには存在しないことを意味するだけです。

于 2013-05-25T08:21:57.567 に答える