在Struts 1.3中,Controller用变量填充View的最佳方法是什么?
时间:2020-03-05 18:58:40 来源:igfitidea点击:
我刚刚继承了一些旧的Struts代码。
如果Struts(1.3)遵循MVC模式,则Action类如何用变量填充View并以HTML呈现?
到目前为止,我已经看到Action类将HTTP请求中的(1)`中的变量推入
request.setAttribute("name", user.getName())
使用特定于应用程序的方法在ActionForm类中使用"(2)":
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日子已经过去了,但据我所记得,我们曾经将一个特定于视图的bean(可以用作细粒度bean或者bean集合的持有者)放入Action.perform()的请求范围执行。然后,该特定于视图的bean将由视图呈现。
回答
由于" Struts 1.3"被认为是过时的,因此建议我们顺其自然,并使用在继承的整个应用程序中已经使用的样式。
如果已经使用了所有不同的样式,请选择最常用的样式。之后,选择我们个人的收藏夹。我的将是1或者3,通常最适合最终将在某些表单控件中呈现的数据的形式(2)。如果是这种情况,请使用表格,否则请不要使用。