0

古い Struts コードをいくつか継承しました。

Struts (1.3) が MVC パターンに従っている場合、Action クラスはどのようにビューに変数を入力して HTML でレンダリングするのでしょうか?

(1)これまでのところ、Action クラスが HTTP リクエストで変数をプッシュするのを見てきました。

request.setAttribute("name", user.getName())

(2)ActionForm クラスで、アプリケーション固有のメソッドを使用して:

UserForm form = (UserForm) actionForm;
form.setUserName(user.getName());

(3)JSPレイヤー(ビューはJSPを使用)に表示されるrequestScope変数ですが、Actionクラスには表示されません。

<p style='color: red'><c:out value='${requestScope.userName}' /></p>

では、これらのうちどれが旧式と見なされ、変数を View in Struts にプッシュする推奨される方法は何ですか?

4

2 に答える 2

1

私の Struts 時代はとうの昔に終わりましたが、私が覚えている限りでは、1 つのビュー固有の Bean (細かい粒度の Bean または Bean のコレクションのホルダーとして機能します) を Action.perform() 内のリクエスト スコープに配置していました。実装。このビュー固有の Bean は、ビューによってレンダリングされます。

于 2008-09-17T12:22:16.797 に答える
0

旧式と見なされているためStruts 1.3、フローに沿って、継承したアプリケーション全体で既に使用されているスタイルを使用することをお勧めします。

すべての異なるスタイルが既に使用されている場合は、最も使用されているスタイルを選択してください。その後、あなたの個人的なお気に入りを選んでください。私の場合は 1 または 3 です。通常、フォーム (2) は、一部のフォーム コントロール内で最終的にレンダリングされるデータに最適です。その場合はフォームを使用し、そうでない場合は使用しないでください。

于 2008-09-17T12:22:37.763 に答える