如何在Struts 1.3中包含所有操作的常用方法

时间:2013-11-22 11:41:22

标签: jsp struts-1

我是struts&我们正在使用jsp&在我们的项目中struts 1.3.10(其中一些操作也是Spring配置)。 Web应用程序设计为每个Web页面都有一个单独的操作类,并具有struts-config.xml中所需的所有操作映射。 还有一个“BaseAction”类,它从我们的Web应用程序中的“Action”扩展而来,我们已经在我们的Web应用程序中进行了所有剩余的操作,以扩展此基本操作。这个BaseAction类没有执行方法。

我想做什么

我想要包含一个简单的java方法,比如checkOfficeHours,它会在每次呈现页面时检查办公时间。也就是说,我希望每次调用一个动作时都执行这个方法。

此方法还将为我的jsp设置一个请求属性。

因此它是所有操作的通用代码,但我不希望在所有java类中编写相同的方法。有没有一种方法可以在BaseAction类中编写这个方法,它自动由每个动作自己执行,而不必从每个动作类中显式调用它?

我可以使用setToken(HTTPServletRequest)方法执行此操作吗?我一直在网上搜索,但用struts 1.3找不到多少。

非常感谢任何投入。

我可以在Base ActionForm&中使用构造函数吗?使所有ActionForms从基础扩展?我可以确定总是会为ActionForm调用构造函数吗?

1 个答案:

答案 0 :(得分:0)

在对象创建期间如何调用构造函数

也就是说,如果您将某些内容放入请求范围内(例如,不在表单中),则可以考虑使用自定义请求处理器或过滤器。

最后,如果这是应用程序范围的行为那么为什么要将它放在每个请求(过滤器或自定义请求处理器)或甚至在动作实例化期间发生的事情中呢?将它放在过滤器中,检查每天是否已按照请求滚动(仍需要执行此操作),并将其放在 application 范围内。