加载中…
个人资料
蓝人
蓝人
  • 博客等级:
  • 博客积分:0
  • 博客访问:146,879
  • 关注人气:61
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

LookupDispatchAction

(2006-04-21 17:39:25)

这个Action类可以将据有类似功能的Action合并到一起。它与DispatchAction类的作用差

不多,唯一不同的是:这个类是通过资源包中的key作为请求参数来进行对方法的映射,

而DispatchAction是通过请求参数来选择方法,即,SUBMIT的value与方法名必须一致。

如果使用这个类,SUBMIT的value是资源包中key所对应的值,而根据这个key是如何选择

运行方法的,下面就来介绍一下。
步骤一:扩展一个LookupDispatchAction的子类。
注意:1)每个方法必须是public的,为了向外面提供调用接口;
2)不能包括execute方法,这个方法使用LookupDispatchAction的默认方法;
3)每个方法的返回值与参数应该与普通Action类的execute方法一样;
4)每个方法代表一个功能,就相当于合并以前各个普通Action子类的execute方法。

步骤二:在这个子类中实现个体KeyMethodMap方法,实现“键--方法”的映射。
例子:

public Map getKeyMethodMap(){
Map map = new HashMap();
map.put("save","saveStatus");
map.put("load","loadStatus");
return map;
}


步骤三:在资源包中定义“键”对应的“值”,用于表示在SUBMIT按钮上。
例子:

save=save this status;
load=load this status;


步骤四:配置struts-config.xml。
例子:

input = "/www.jsp"
parameter = "method"
scope = "request"
type = "com.sinpool.strtus.QQQAction"

 

其中parameter="method",指定的字符串是method,说明SUBMIT的property(name)就应

该是method。

步骤五:在JSP中的代码。
例子:


必须用设置SUBMIT应该显示的值,这段代码提交请求时,应该类似这
个样子:http://localhost:8080/qqq?method="save this status"。参数名“method”

应该与步骤四中
的action标签中的parameter一样。

总结:虽然在提交请求时,仍将SUBMIT的value("save this status")提交了,但是,

可以按照getKeyMethodMap()方法的定义,通过资源包的key映射到具体的方法名上。所以

,这个请求实际调用了save方法。

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
前一篇:flash lite
后一篇:struts-config.xml
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

    < 前一篇flash lite
    后一篇 >struts-config.xml
      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有