DispatchAction继承自Action类,它是一个抽象类,封装了一些基础方法,来解决使用一个Action处理多个操作的能力,这就是DispatchAction最大的用途,它可以帮助我们用一个Action类,封装一套类似的操作方法,节省了类的数目,同时也减轻了后期维护的困难。
DispatchAction中主要包括一下几个方法:
protected ActionForward dispatchMethod
protected java.lang.reflect.Method getMethod
protected java.lang.String getMethodNameDispatchAction在配置上于标准的Action稍有不同,就是要在Action配置中多一个parametr属性,这个属性将指导DispatchAction找到对应的方法,例如这样配置:
<action path="/saveSubscription" type="org.apache.struts.actions.DispatchAction" name="subscriptionForm" scope="request" input="/subscription.jsp" parameter="method"/>
parameter的属性值是可以任意起的,只要你记得在传参数的时候统一就可以了。比如我写了一个类似这样的Action,它继承自DispatchAction类,包含了三个操作方法,有Add(),Update(),Delete()。当我想要调用这个Action的Update操作时,提交的URL应该类似这样的:
http://localhost:8080/myapp/saveSubscription.do?method=update
就是这么简单,不过非常方面我们程序员了,开发中我感觉的确省了好多代码,至少以前的三个类文件变成了现在一个类了,而且在后期维护的时候感觉也是方便很多。
需要注意的是:在调用DispatchAction的时候method参数是不能为空的,如果空,DispatchAction会调用unspecified方法并抛出异常。
分享到:
相关推荐
虽然题目中没有详细介绍 **SwitchAction**,但它是一个类似的模式,可以在其他框架或自定义实现中找到类似的功能。**SwitchAction** 的基本思想是提供一种更灵活的方式来根据请求参数执行不同的业务逻辑。 **3.1 ...
DispatchAction 的 parameter 属性是给 DispatchAction 使用的,你的类要继承 DispatchAction 类,而不是普通的 Action,Action 只会执行 execute 方法,DispatchAction 会根据 parameter 的值执行特定的方法。...
在上面的示例代码中,我们使用dispatchAction方法触发了unfocusNodeAdjacency事件,该事件会取消高亮显示当前节点的相邻节点。 5. 事件的绑定 事件的绑定需要使用Echarts的on方法,该方法可以绑定图表的交互事件。...
此外,博客可能会介绍如何处理用户界面,如使用JSP页面来显示表单和接收用户输入。在JSP中,可以使用Struts的标签库(Struts Tags)来生成表单元素,并通过表单提交将请求发送到相应的DispatchAction方法。 最后,...
概念介绍 从Struts 1.1版本开始,ActionForm类支持Map属性。这种设计允许开发者在ActionForm中混合使用Map和常规JavaBean属性,从而提高了灵活性。通过Map,开发者可以在不预先定义特定属性的情况下捕获HTTP请求...
#### 二、解决方案介绍 针对上述问题,我们可以采用以下几种方法来优化Action的设计: 1. **DispatchAction** - **定义**:`DispatchAction`是Struts框架提供的一种特殊的`Action`实现,它可以在一个Action中...
- 介绍了Struts提供的内置Action类DispatchAction的特性和使用方法。 - **9.2 Struts内置类ForwardAction** - 解释了ForwardAction类的作用及其应用场景。 - **9.3 Struts令牌机制,防止重复提交** - 讨论了...
"struts的结构.doc"文档应该详细介绍了Struts框架的基本架构,其中包括ActionServlet、ActionForm、ActionMapping、Action、ActionForward等关键组件以及它们如何协同工作。理解这些组件的作用和相互关系,对于掌握...
- **Struts内置类DispatchAction**:DispatchAction是Struts中的一个内置Action类,可以根据不同的请求参数执行不同的方法。 - **Struts内置类ForwardAction**:ForwardAction用于直接转发请求到指定的页面或Action...
1. **基础概念**:了解Struts框架的核心概念,包括Action、Form Bean、Controller(DispatchAction)以及Tiles等组件,这些都是构建Struts应用的基础。 2. **配置文件详解**:详述struts-config.xml文件的各个元素...
要实现ECharts图形全屏展示,主要涉及到ECharts的`dispatchAction`方法和`visualMap`组件。下面将详细介绍如何通过点击按钮来实现这一功能。 首先,你需要在HTML页面中创建一个ECharts图表容器和一个用于触发全屏的...
这本书的核心内容是介绍如何将Struts作为表现层框架,Spring作为业务层管理器,以及Hibernate作为持久层解决方案,三者协同工作,构建出灵活、可扩展且易于维护的企业级应用。 Struts作为MVC(Model-View-...
Struts教程是学习这一框架的重要资源,下面将详细介绍Struts的核心概念和关键组件。 **1. MVC模式** 在Struts中,MVC模式被用来分离应用程序的业务逻辑、视图展示和用户交互。模型(Model)处理数据和业务逻辑,...
### SSH快速开发框架设计知识点详解 #### 总体架构介绍 ...以上就是关于SSH快速开发框架设计的相关知识点,包括其总体架构、老技术的应用以及新技术的介绍。希望这些内容能够帮助您更好地理解和应用SSH框架。
下面将详细介绍LookUpDispatchAction的使用方法以及其在Struts应用中的重要性。 首先,让我们理解LookUpDispatchAction的核心概念。通常,一个Action类对应一个或多个业务逻辑方法,每个方法处理特定的用户请求。...
通过这种方式,我们不仅可以增强图表的交互性,还能确保用户能获取到更多关于数据的信息,从而提高数据可视化的有效性。在实践中,还可以根据实际需求调整`formatter`和`tooltip`的样式,以达到最佳的视觉效果和用户...
【知识点详解】 ...以上内容详细介绍了JAVA和C#程序员面试中可能遇到的各种技术点,涵盖EJB、Struts、Spring、Hibernate、UML、数据库操作、多线程、MVC模式、版本控制、ORM和Web开发等多个方面。