Struts1的DispatchAction()方法
来源:互联网 发布:移动网络电视打开步骤 编辑:程序博客网 时间:2024/05/21 10:46
在早期的Struts 1.x中为了在大的工程下方便管理而添加了DispatchAction()方法
DispatchAction继承与Action类,是一个抽象类,封装了一些基础方法,来解决使用一个Action处理多个操作的能力,这就是DispatchAction最大的用途,它可以帮助我们用一个Action类,封装一套类似的操作方法,节省了类的数目,同时也减轻了后期维护的困难。
DispatchAction中主要包括以下几个方法:protected ActionForward dispatchMethod
protected java.lang.reflect.Method getMethod
DispatchAction的使用有三步骤:
1.写一个类继承(extends)DispatchAction
package com.action;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import org.apache.struts.actions.DispatchAction;public class UserLogin extends DispatchAction{public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception { System.out.println("主要的方法");return super.execute(mapping, form, request, response);}public ActionForward Login(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception { System.out.println("这个是Login"); return mapping.findForward("welcome"); } }
2.配置struts-comfig.xml文件
<action-mappings ><action path="/UserLogin" name="userForm" type="com.action.UserLogin" parameter="action"> <forward name="welcome" path="/welcome.jsp"></forward> <forward name="error" path="/index.jsp"></forward> </action> </action-mappings>
parameter的属性值是可以任意起的,只要你记得在传参数的时候统一就可以了。
3.调用自定义方法
可以有两种方式来调用:
第一种是以表单的方式
<form action="UserLogin.do?action=Login" method="post"></form>
注意上面parameter的值和这里所使用的要一样,也就是上面所说的统一
第二种是隐藏域的形式
<input type="hidden" name="oparator" value="Login" />
然后用表单提交 那么 Struts xml配置文件中就改成
<action path="/UserLogin" name="userForm" type="com.action.UserLogin" parameter="oparator">
配置文件中的parameter 值就是jsp页面隐藏域的值
其他的和Action的配置没有太大的区别 这里的名字是随便取的
- Struts1的DispatchAction()方法
- struts1 DispatchAction
- Struts1 DispatchAction
- Struts1框架七之DispatchAction的说明
- 解决Struts1.x中使用Validator框架对DispatchAction不同方法使用不同的字段验证
- 解决Struts1.x中使用Validator框架对DispatchAction不同方法使用不同的字段验证
- Struts1学习笔记(5)-----用DispatchAction类实现方法的动态分配
- 动态方法调用和使用通配符实现类似struts1.x的dispatchAction功能
- struts1 DispatchAction类例子
- struts1(11)-----DispatchAction
- Struts1 DispatchAction类
- struts1 中DispatchAction 与action 的区别,以及DispatchAction的用法含义
- 在Struts1中项目中基于DispatchAction的登陆控制
- 关于struts1.3中使用DispatchAction的一个问题
- struts1.3中使用DispatchAction的一个问题
- Struts1.x系列教程(18):使用DispatchAction类调用多个Action方法
- Struts1.x系列教程(18):使用DispatchAction类调用多个Action方法
- Struts1.x系列教程(18):使用DispatchAction类调用多个Action方法
- hdu_4374 One hundred layer解题报告
- android系统移植emmc记录(4)-- fdisk 分区命令分析 .
- unix网络编程各种TCP客户-服务器程序设计实例附环境搭建和编译方法(一)
- android系统移植emmc记录(5)-- fastboot命令分析 .
- hdu3172 字典树&&并查集
- Struts1的DispatchAction()方法
- opensuse如何进行上网设置(待租约的)----待解决
- mysql添加用户、删除用户、授权、修改密码等
- hdu 1392 凸包问题
- Ubuntu学习
- android系统移植emmc记录(6)--sd卡烧写文件分析 .
- matlab实现gabor filter (6)
- 最短路 SPFA (对于bellman-ford 的优化)
- android系统移植emmc记录(总) .