我刚刚继承了一些旧的 Struts 代码。

如果 Struts (1.3) 遵循 MVC 模式,那么 Action 类如何用变量填充 View 以在 HTML 中呈现?

到目前为止,我已经看到 Action 类将变量推入 (1) HTTP 请求

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

(2) 在 ActionForm 类中,使用特定于应用程序的方法:

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

(3) requestScope 变量,我在 JSP 层中看到该变量(视图使用 JSP),但在 Action 类中看不到。

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

那么,其中哪一个被认为是老式的,在 Struts 的 View 中推送变量的推荐方法是什么?

有帮助吗?

解决方案

作为 Struts 1.3 被认为是老式的,我建议顺其自然并使用您继承的应用程序中已经使用的样式。

如果所有不同的样式都已使用,请选择最常用的一种。之后,选择您个人最喜欢的。我的是 1 或 3 - 表单 (2) 通常最适合最终在某些表单控件内呈现的数据。如果是这种情况 - 使用该表格,否则 - 不要。

其他提示

我的 Struts 时代已经过去很久了,但据我记得,我们曾经将一个特定于视图的 bean(它可以作为细粒度 bean 或 bean 集合的持有者)放入 Action.perform() 中的请求范围中执行。然后,该特定于视图的 bean 将由视图呈现。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top