lookupDispatchAction用途之一:当jsp中有多个相同名字的按钮时
jsp:
<body>
<html:form action="/my">
age : <html:text property="age"/><html:errors property="age"/><br/>
name : <html:text property="name"/><html:errors property="name"/><br/>
<input type="submit" name="method" value="save"/>
<input type="submit" name="method" value="delete"/>
<input type="submit" name="method" value="search"/>
</html:form>
</body>
action:
public class MyAction extends LookupDispatchAction {
...
public ActionForward saveAction(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
MyForm myForm = (MyForm) form;// TODO Auto-generated method stub
System.out.println("MyAction...save(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)");
return mapping.findForward("succ");
}
public ActionForward deleteAction(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
MyForm myForm = (MyForm) form;// TODO Auto-generated method stub
System.out.println("MyAction...delete(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)");
return mapping.findForward("succ");
}
public ActionForward searchAction(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
MyForm myForm = (MyForm) form;// TODO Auto-generated method stub
System.out.println("MyAction...search(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)");
return mapping.findForward("succ");
}
/**
* 必须覆盖
*/
protected Map getKeyMethodMap() {
// TODO Auto-generated method stub
/**
* key对应ApplicationResources.properties中=前面
* value对应action中的方法名
*
* ApplicationResources.properties中=后面对应jsp按钮value
*/
Map<String, String> m = new HashMap<String, String>();
m.put("button.save", "saveAction");
m.put("button.delete", "deleteAction");
m.put("button.search", "searchAction");
return m;
}
Struts-config.xml
记得加上
parameter="method"
ApplicationResources.properties:
button.save=save
button.delete=delete
button.search=search
有一点可以看到,地址栏里面没有显示方法名../../my.do隐藏掉了,呵。
分享到:
相关推荐
默认情况下,Struts1的动作类只有一个`execute()`方法,但使用`LookupDispatchAction`时,可以定义多个处理特定请求的方法,每个方法对应一个特定的请求参数。 二、配置与使用 1. 配置struts-config.xml 首先,需要...
在Struts框架中,`List_Map_LookupDispatchAction_Validate`涉及了几个关键概念,我们将逐一详细解释。 1. **LookupDispatchAction**: 这是Struts1中的一个特殊类型的动作,主要用于处理多个请求映射到同一个Action...
Struts LookupDispatchAction 类是Apache Struts 框架中的一种高级控制器,它扩展了`DispatchAction`类,提供了一种更加灵活的方式来处理请求映射。在 Struts 框架中,Action 是业务逻辑的核心组件,负责接收HTTP...
Struts 2.0还提供了一种方式来改变默认调用的方法,这类似于Struts 1.x的`LookupDispatchAction`。在`struts.xml`中,可以直接指定Action的执行方法,例如: ```xml <result name="success">/HelloWorld.jsp ...
- **LookUpDispatchAction**:与 DispatchAction 类似,但更灵活,可以动态地确定方法名。 2. **ActionServlet**:Struts1.x 的核心组件,负责初始化框架、接收 HTTP 请求并将请求分发给相应的 Action 类处理。 3. ...
struts1学习资料:里面包含struts源码工程 ActionServlet DispatchAction Action LookUpDispatchAction的用法 还包含html logic bean tiles标签的详细使用方法和validate验证框架的具体案例
在处理一个表单(form)中存在多个submit按钮的情况时,Struts2提供了一种优雅的方式来区分用户点击了哪个按钮,而无需像Struts1那样使用额外的动作类(如LookupDispatchAction或EventDispatchAction)。 在传统的...
**LookupDispatchAction** 是 **DispatchAction** 的一个扩展,它同样位于 `org.apache.struts.actions` 包中。该类主要用于处理包含多个具有相同名称但不同功能的提交按钮的情况。 **2.1 LookupDispatchAction 的...
8. JSP页面使用Struts标签显示数据或进行其他操作。 ### 二、控制器组件 #### 1. struts-config.xml 这是Struts的核心配置文件,定义了Action、ActionForm、ActionMapping等元素,用于指导请求处理和视图渲染。 #...
在这个例子中,可能会使用`LookupDispatchAction`,这是一个特殊类型的Action,它允许根据用户提交的按钮值(submit标签的name属性)来调用不同的业务方法。 在用户界面设计中,静态验证是先于服务器端验证的一步,...
这类似于Struts1中的查找器(LookupDispatchAction)或切换器(SwitchingAction),但更加灵活和模块化。 总的来说,Struts2的Action设计使得开发者能够更加专注于业务逻辑,而无需关心底层的请求处理细节。同时,...
JavaEE框架 Struts_In_Action(中文版) Struts Action Struts_In_Action LookupDispatchAction DispatchAction 对Action讲的比较仔细,可以深入的了解Struts框架里的基本原理。
为了开始使用Struts,你需要配置`struts-config.xml`文件,将所有请求路由到`ActionServlet`,这个中心控制器负责协调整个应用程序。 3. **J2EE n层结构** J2EE的n层结构包括表示层(Presentation)、控制/中介层...
尽管这个例子展示了如何使用Struts标签库(struts-bean.tld和struts-html.tld)和Validator插件进行表单验证,但同时也暴露出将大量业务逻辑放入Action的不良实践,这在实际开发中应避免,以便更好地分离关注点,...
`struts-config.xml`文件是Struts框架的核心配置文件之一,用于定义应用程序的各种配置信息,如Action mappings、form beans等。 ##### 4.Struts的工作流程 - 用户发起HTTP请求到服务器。 - 请求被Struts的Action...
- **使用LookupDispatchAction:** 支持根据请求参数动态选择Action执行。 - **使用ForwardAction:** 实现简单的页面转发。 - **使用IncludeAction:** 实现页面包含。 - **使用SwitchAction:** 基于条件选择...
- 使用Struts标签库,如`<s:text>`来显示多语言文本。 - 使用`<s:property>`显示表单数据。 #### 七、Struts验证框架 - **Struts-config.xml部分**: - 定义了验证规则及其对应的错误信息。 - **FormBean部分*...
- **LookupDispatchAction**:类似DispatchAction,但支持查找方法。 - **SimpleAction**:简单的Action实现,通常用于演示目的。 ### Struts应用的国际化(I18N) - **资源文件**:使用`.properties`文件来管理...
下面将详细介绍LookUpDispatchAction的使用方法以及其在Struts应用中的重要性。 首先,让我们理解LookUpDispatchAction的核心概念。通常,一个Action类对应一个或多个业务逻辑方法,每个方法处理特定的用户请求。...