1.ForwardAction:用于请求转发。
例如:锚点标记,为了保持MVC的结构,在使用锚点标记是不直接跳转页面,而是通过跳转到XX.do 由ForwardAction实现页面跳转。
配置:
<action-mappings>
<action path="/toLogin" type="org.apache.struts.actions.ForwardAction" forward="/login.jsp">
</action>
</action-mappings>
forward属性值为要跳转的页面。
2.incluedeAction :用于包含页面。
Jsp :<jsp:include page="includeWelcome.do"></jsp:include>
配置:
<action-mappings>
<action path="/includeWelcome" type="org.apache.struts.actions.IncludeAction" parameter="/welcome.jsp">
</action>
</action-mappings>
3.DispatchAction :用于一个类中实现一组相关业务(同一页面的一个表单多个提交按钮)。
用法:编写一个类继承DispatchAction ,但切记不能重写DispatchAction 的execute()方法。业 务方法的返回值类型,传递的参数类型以及个数与execute()方法一致。
缺陷:要用到js代码,如果js被禁用,则不能实现相关业务。
jsp页面:
<form action="train.do" method="post">
<input type="hidden" name="training">
<input type="submit" value="喂食" name="eatbtn" onclick="training.value="eat'"/>
<input type="submit" value="讲故事" name="talkbtn" onclick="training.value="talk'"/>
<input type="submit" value="游戏" name="playbtn" onclick="training.value="play'"/>
</form>
点击按钮之后,隐藏表单提交项的value值必须与DispatchAction中的业务方法的方法名保持一致。
配置:
<action path="/train" type="com.lovo.struts.action.PetDispatchAction" parameter="training">
<forward name="petInfo" path="/petInfo.jsp"></forward>
</action>
4.MappingDispatchAction :用于多个表单一个Action处理(分开的页面,处理一个业务)。
用法:编写一个类继承MappingDispatchAction ,但切记不能重写 MappingDispatchAction 的execute()方法。业务方法的返回值类型,传递的参数类型以及个数与execute()方法一致。
Jsp:
<form method="post" action="add.do" name="addForm">
<input type="submit" value="add" name="addBtn">
</form>
<form method="post" action="del.do" name="delForm">
<input type="submit" value="del" name="delBtn">
</form>
配置:
<action path="/add" type="com.lovo.struts.action.MyMappingDispatchAction" parameter="addStu">
</action>
<action path="/del" type="com.lovo.struts.action.MyMappingDispatchAction" parameter="delStu">
</action>
parameter属性的属性值与必须与 MappingDispatchAction中的业务方法的方法名保持一致。
5.LookupDispatchAction : 用于一个类中实现一组相关业务(同一页面的一个表单多个提交按钮)。
用法:编写一个类继承MappingDispatchAction ,但切记不能重写LookupDispatchAction 的execute()方法。业务方法的返回值类型,传递的参数类型以及个数与execute()方法一致。重写getKeyMethodMap()方法.必须配置一个form-bean.
jsp页面:
<html:form action="train.do" method="post">
<input type="hidden" value= <%= id %> name="petId">
<html:submit property="playBtn">
<bean:message key="button.eat"/>
</html:submit>
<html:submit property="playBtn">
<bean:message key="button.talk"/>
</html:submit>
<html:submit property="playBtn">
<bean:message key="button.play"/>
</html:submit>
</html:form>
在使用LookupDispatchAction时,jsp页面要用到struts的html标签库和bean标签库.以及 propperties配置文件.html标签的property的值必须一致.html标签的key的值对应propperties中的值.
配置:
<form-bean name="lookup" type="org.apache.struts.action.DynaActionForm"></form-bean>
<action path="/train" type="com.lovo.struts.action.PetLookupDispatchAction" name="lookup" parameter="playBtn">
<forward name="petInfo" path="/petInfo.jsp"></forward>
</action>
parameter属性的值必须与html标签的property的值一致.
6.SwitchAction:用于多个配置文件之间的页面跳转.
XML中的配置:
<init-param>
<param-name>config/t87</param-name>
<param-value>/WEB-INF/struts-moduleA.xml</param-value>
</init-param>
struts-config.xml中的配置:
<action path="/toT87" type="org.apache.struts.actions.SwitchAction">
相关推荐
一、准备工作及实例 3 ...小结Action 14 9.使用通配符 14 10.使用0配置:ZERO Annotation 15 11.Result配置详解 15 探讨type类型: 16 Type类型值 16 作用说明 16 对应类 16 chain 16 用来处理Action链 16 ...
#### 五、小结 通过本文档的学习,我们不仅了解了如何在 MyEclipse 8 环境中快速搭建 Struts 2 开发环境,还掌握了 Struts 2 的基本配置文件 `struts.xml` 和 `web.xml` 的配置方法。这对于初学者来说是非常有价值...
小结** 通过这个简单的登录应用,我们了解了Struts的基本工作流程,包括配置、Action、Form Bean和视图的交互。这只是一个起点,Struts还有许多高级特性和插件,如Tiles、Struts Tiles、Validation框架等,可以...
相较于 Struts1.x 版本,Struts2 提供了更强大的功能与灵活性,它不仅支持传统的表单提交方式,还提供了更为灵活的 Ajax 支持,以及更丰富的标签库等特性。 #### 二、Struts2架构与配置 1. **基础配置**:Struts2 ...
第一部分 Spring的核心 第1章 开始Spring之旅 1.1 Spring是什么 1.2 开始Spring之旅 1.3 理解依赖注入 1.3.1 依赖注入 1.3.2 DI应用 1.3.3 企业级应用中的依赖注入 1.4 应用AOP ...B.4 小结
第一部分 Spring的核心 第1章 开始Spring之旅 1.1 Spring是什么 1.2 开始Spring之旅 1.3 理解依赖注入 1.3.1 依赖注入 1.3.2 DI应用 1.3.3 企业级应用中的依赖注入 1.4 应用AOP ...B.4 小结
第九章 开发Struts 1.x应用 145 9.1 介绍 145 9.2 创建Struts项目 147 9.2.1 创建Web项目 148 9.2.2 加入 Struts开发功能 148 9.3 使用Struts工具 150 9.3.1 Struts配置文件编辑器 150 9.3.2 ...
### 小结 上述过程详细展示了如何在MyEclipse2013中从零开始配置并使用Struts2框架。Struts2是一种基于MVC架构的JavaWeb框架,它简化了Web应用的开发流程,使得开发者能够更高效地构建复杂的应用程序。通过本教程的...
目录 第一部分spring的核心 第1章开始spring之旅 1.1spring是什么 1.2开始spring之旅 1.3理解依赖注入 ...1.5小结 ...2.6小结 ...3.7小结 ...4.6小结 ...5.8小结 ...6.5小结 ...7.7小结 ...8.6小结 ...9.6小结 ...b.4小结
12.1.2 Struts 2.0与Struts 1.x框架的区别 215 12.2 MyEclipse创建基于Struts 2.0框架的项目 215 12.2.1 下载Struts 2.0开发包 216 12.2.2 创建Struts 2.0项目 216 12.2.3 配置Struts 2.0项目 217 12.2.4 创建Struts...
第九章 开发Struts 1.x应用 166 9.1 介绍 166 9.2 创建Struts项目 168 9.2.1 创建Web项目 169 9.2.2 加入 Struts开发功能 169 9.3 使用Struts工具 171 9.3.1 Struts配置文件编辑器 171 9.3.2 Struts组件向导 173 9.4...