4种 Action 的创建步骤
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
创建步骤:
1:action的创建和操作
1: 创建一个web工程,添加struts功能,选中struts 1.3的单选按钮finish
2:在struts-config.xml文件中的视图Design中new 一个form action and jsp,
下一步,在use case中输入自己命名的名称,可以为页面和formbean中添加属性,在jsp 选项中,选中Create jsp form的复选项框, 可由自动创建一个jsp页面与form对应下一步,也是默认操作,finish
3:这就完成了普通action的创建,如在有form的jsp页面中提交到action 中,action=struts-config.xml中path的值
如在其他页面非struts的form标签中提交到action中需自行在path的值+.do且不能用“/”,如有后缀则加上?act=值
4:action中只有一个execute()方法,把业务逻辑填充到此方法内
2.DispathAction
1、新建Action Bean 扩展DispathAction
2、在struts-config.xml 配置文件中配置所对应的action 标签的parameter 属性,其值
与JSP 里面的Forn请求的parameter参数名一致,参数的值就是所请求的方法名。
3、在页面中设置请求参数的值必须与要调用对应Action Bean 的方法名一致,通过js
代码完成
3.LookupDispathAction
1、新建Action Bean 扩展LookupDispathAction
2、同样配置struts-config.xml 文件中Action Bean 所对应的action 标签的parameter
参数,其值为任意字符串
3、实现LookupDispath 类的抽象方法getKeyMethodMap(),返回一个Map 集合,此集合
的键为资源文件的键,值则为对应的方法名<所谓的lookup就在这>
4、编写资源文件映射getKeyMethodMap()方法中的Map 集合.其值为要在页面显示的信
息.
5、设置JSP 页面提交点的property 属性,其值为对应Action Bean 中所配置的
parameter 属性值.
6、设置JSP 页面提交点的显示信息:
i.可配置bean:message 中的key 属性与资源文件配置的键值做对应.
ii.可直接设置提交点(html:submit)的value 属性,同样要与资源文件配置的键值做对应.
4、MappingDispatchAction
1、新建Action Bean 扩展MappingDispatchAction
2、配置struts-config.xml 文件中Action Bean 所对应的action 标签的parameter 参
数,其值对应为Action Bean 的方法名.
3、当同一页面有多个提交到同一个action中时,需要复制多一个action,修改perameter 的值为action中的方法名,path也要修改,
对应的页面的action也要修改和path一样,
不同页面提交到同一个action中时,需要复制多一个action,修改perameter的值为action中的方法名即可,
还有input=""表示是哪一个页面提交过来的,attribute="testForm"和name="testForm"都要改为新的Form
path也要修改,
4.页面中的action写struts-config.xml中path的值, 当页面要转发到这个action中时,会以这个perameter的值到action中的方法来匹配,
5:当用户点击页面的提交按钮时,按提交的action到struts-config.xml中去找,找到后,提取perameter的值,到type指定的action中去找到相应的方法名
适用情况:
DispathAction 和LookupDispathAction 适用于一个Form 表单有多个提交点的情况, LookupDispathAction不用暴露方法名和依赖js代码,而MappingDispatchAction 适用于多个Form 表单提交到一个Action Bean 的情况.