Struts1.x系列教程(20):操纵EventDispatchAction类处理一个fo[Java编程]
本文“Struts1.x系列教程(20):操纵EventDispatchAction类处理一个fo[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
固然LookupDispatchAction类可以很好地处理拥有多个提交按钮的Form,但是必必要和属性文件相关联,并且还得在getKeyMethodMap办法中举行key和Action办法的映射,利用起来非常不便利.从Struts1.2.9开始,加入了另一个用于处理多个提交行动的EventDispatchAction类.这个类也是DispatchAction的子类,它在利用上要比LookupDispatchAction类简单的多.EventDispatchAction类的基本原理是通过<action>元素的parameter属性指定多个行动,中间用逗号(,)脱离.每个行动实际上就是<html:submit>标签的property属性值.这样EventDispatchAction类便可以按照每个<html:submit>标签的属性值来肯定用户按的是哪个提交按钮了.
我们可以按以下三步来利用EventDispatchAction类.
【第1步】实现EventDispatchAction的子类
在<samples工程目录>srcaction目录中成立一个MyEventDispatchAction.java文件,代码以下:
package action;
import java.io.PrintWriter;
import javax.servlet.http.*;
import org.apache.struts.action.*;
import org.apache.struts.actions.*;
public class MyEventDispatchAction extends EventDispatchAction
{
// 处理print行动
public ActionForward print(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
{
try
{
response.setCharacterEncoding("GBK");
PrintWriter out = response.getWriter();
out.println("打印成功!");
}
catch (Exception e)
{
}
return null;
}
// 处理save行动
public ActionForward save(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
{
try
{
response.setCharacterEncoding("GBK");
PrintWriter out = response.getWriter();
out.println("保存成功!");
}
catch (Exception e)
{
}
return null;
}
}
在MyEventDispatchAction类中有两个办法:print和save,辨别用来处理property属性值为“print”和“save”的<html:submit>标签提交的恳求行动.
以上是“Struts1.x系列教程(20):操纵EventDispatchAction类处理一个fo[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |