struts_DispatchAction的实现

本文介绍了一个简单的Struts DispatchAction实现,该实现通过反射调用不同的方法来处理请求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


package com.dd.struts.actions;

import java.lang.reflect.Method;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;


/*
* org.apache.struts.actions.DispatchAction;
* 类的低层实现
* */
public class DispachActions extends Action{

@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
//获得struts_config.xml 配制文件action-mappings 里面的parameters 的value
String params = mapping.getParameter();

//通过params 获得界面上对应名称的value值
String method = request.getParameter(params);

//表示当前类对象.Servlet初始了哪个类就是哪个类的对象 在这里是 DispachActions的子类的对象
//不本类的对象
Class c = this.getClass();

Method mh = c.getMethod(method, new Class[]{ActionMapping.class,ActionForm.class,HttpServletRequest.class,HttpServletResponse.class});
Object obj = mh.invoke(this,mapping,form,request,response);
return (ActionForward) obj;
}
}


DispatchAction 简单的DispatchAction实现.不到的地方希望指点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值