继承DispatchAction可在一个Action里完成多个操作

继承这个类后,在Action里可以定义多个方法,而不是只能在execute方法中写代码了。

Action代码(需要继承DispatchAction)

package com.xxc.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;

/*
 * 一个action完成crud
 * 在DispatchAction的子类中增加新的方法时
 *   * 新增的方法的方法的返回值和Action中的execute方法相同
 *   * 新增的方法的方法的参数类型要和Action中的execute方法相同
 *   * 新增的方法的方法的参数顺序和个数要和Action中的execute方法相同
 *   * 新增的方法的方法的名称和Action中的execute方法的名称不同
 */
public class Param extends DispatchAction {

	public ActionForward add(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		System.out.println("add运行");
		return null;
	}
	public ActionForward delete(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
					throws Exception {
		System.out.println("delete运行");
		return null;
	}
	public ActionForward update(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
					throws Exception {
		System.out.println("update运行");
		return null;
	}
}

struts-config.xml

<action-mappings>
		 <!-- 
        	method  = save"
       		 参数名称  =参数的值
       		 <a href="${pageContext.request.contextPath}/param.do?me=add">添加员工信息</a><br>
           parameter属性:该属性的值应为jsp页面中参数的名称    parameter="me" 代表需要被执行方法名称的参数名
           DispatchAction 在执行时,
                                 把parameter指向的参数名称(me)的值(add)作为DispatchAction这个Action子类中方法的名称
    	-->
		<action path="/param" type="com.xxc.action.Param" parameter="me"></action>
</action-mappings>

param.jsp

<body>
    <a href="${pageContext.request.contextPath}/param.do?me=add">添加</a>
    <a href="${pageContext.request.contextPath}/param.do?me=delete">删除</a>
    <a href="${pageContext.request.contextPath}/param.do?me=update">修改</a>
</body>





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值