【Struts2学习笔记(2)】Action默认值和配置Action于result各种转发类型

一、Action缺省配置值

<span style="font-size:18px;"><package name="itcast" namespace="/test" extends="struts-default">
        <action name="helloworld" class="cn.itcast.action.HelloWorldAction" method="execute" >
	<result name="success">/WEB-INF/page/hello.jsp</result>
        </action>
  </package>
1>假设没有为action指定class,默认是ActionSupport。

2>假设没有为action指定method,默认运行action中的execute() 方法。
3>假设没有指定result的name属性。默认值为success。</span>

二、Action中result的各种转发类型

<span style="font-size:18px;"><action name="helloworld" class="cn.itcast.action.HelloWorldAction">
	<result name="success">/WEB-INF/page/hello.jsp</result>
</action>

(1)result配置类似于struts1中的forward,但struts2中提供了多种结果类型,经常使用的类型有: dispatcher(默认值)、 redirect 、 redirectAction 、 plainText。

(2)在result中还能够使用${属性名}表达式訪问action中的属性,表达式里的属性名相应action中的属性。例如以下:

<result type="redirect">/view.jsp?id=${id}</result>

(3)以下是redirectAction 结果类型的样例,假设重定向的action中同一个包下:

<action name="redirectAction">
			<result type="redirectAction">helloworld</result>
		</action>

假设重定向的action在别的命名空间下:

<struts>

	<package name="itcast" namespace="/control/employee" extends="base">	

		<action name="list" class="cn.itcast.action.HelloWorldAction" method="execute">
			<result name="success" type="redirect">/employeeAdd.jsp?username=${username}</result>
		</action>

		<action name="redirect">
			<result type="redirect">/employeeAdd.jsp</result>
		</action>
		<action name="redirectAction"> <!-- 不同的命名空间下的 -->
			<result type="redirectAction">
				<param name="actionName">xxx</param> <!-- action的名字-->
				<param name="namespace">/control/department</param>
			</result>
		</action>
	</package>

	<package name="other" namespace="/control/department" extends="base">
		<action name="xxx">
			<result>/WEB-INF/page/hello.jsp</result>
		</action>
	</package>
</struts>

(4)plaintext:显示原始文件内容,比如:当我们须要原样显示jsp文件源码 的时候。我们能够使用此类型。

<result name="source" type="plainText ">
	<param name="location">/xxx.jsp</param>
	<param name="charSet">UTF-8</param><!-- 指定读取文件的编码 -->
</result>

版权声明:本文博主原创文章,博客,未经同意不得转载。

时间: 2024-07-28 17:52:32

【Struts2学习笔记(2)】Action默认值和配置Action于result各种转发类型的相关文章

struts2学习笔记之十四:使用注解配置Action(不是和spring集成使用)

Struts2支持使用注解配置Action,减少配置文件的配置 Struts2如果要支持注解配置Action,需要插件的支持,导入插件struts2-convention-plugin-2.1.8.1.jar 项目目录树: 1.导入struts2需要的基本包 2.修改web.xml,让struts2拦截Action <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="htt

struts2学习笔记(4)---------action中的方法调用

系统需要使用Action的不同方法来处理用户请求,这就需要让同一个Action里面包含多个控制处理逻辑. 1)动态方法调用 即DMI(dynamic method invocation),使用actionName!methodName的形式来指定想要调用的方法,如果想使用DMI,需要在struts.xml里面加入这句话: <constant name="struts.enable.DynamicMethodInvocation" value="true" /&

Struts2学习笔记(2)值传递

1.action接收jsp传过来的值: a.定义一个User类   有name  pwd属性,  添加相应的get,set方法   b.<!-- 方式1 普通java类 -->  在UserAction中    添加: private User user;  并添加相应的get,set方法 <!-- 方式2 实现ModelDriven<T>接口-->   在UserAction中   @Override   public User getModel() {    ret

Struts2学习笔记(三)——Action详解

Action是用于处理请求操作的,它是由StrutsPrepareAndExceuteFilter分发过来的. 1.Action的创建方式 1) POJO类(PlainOldJavaObjects简单的Java对象),不需要继承任何父类,实现任何接口 1 public class TestAction { 2 public String execute() { 3 return "success"; 4 } 5 } 这种方式是Struts2框架通过反射来实现的,步骤: struts2框

Struts2学习笔记(OGNL表达式)

Struts2学习笔记(OGNL表达式) Struts 2支持以下几种表达式语言: OGNL(Object-Graph Navigation Language),可以方便地操作对象属性的开源表达式语言: JSTL(JSP Standard Tag Library),JSP 2.0集成的标准的表达式语言: Groovy,基于Java平台的动态语言,它具有时下比较流行的动态语言(如Python.Ruby和Smarttalk等)的一些起特性: Velocity,严格来说不是表达式语言,它是一种基于Ja

Struts2 学习笔记(概述)

Struts2 学习笔记 2015年3月7日11:02:55 MVC思想 Strust2的MVC对应关系如下: 在MVC三个模块当中,struts2对应关系如下: Model: 负责封装应用的状态,并实现应用的功能.通常分为数据模型和业务逻辑模型,数据模型用来存放业务数据,比如订单信息.用户信息等:而业务逻辑模型包含应用的业务操作,比如订单的添加或者修改等. 封装应用状态:某些应用数据封装起来,使得视图只能通过接口获取对应的数据 响应状态查询:对应用的状态改变进行处理 暴露应用功能:暴露接口 通

struts2学习笔记(7)------------ognl表达式

OGNL表达式(Object-Graph Navigation Language),大概可以理解为:对象图形化导航语言.是一种可以方便地操作对象属性的开源表达式语言. Struts2自行维护一个特定范围的"银行",Action将数据放入其中,而JSP页面可从中取数据,表面上似乎看起来像是jsp可以直接访问Action数据.. 当Action属性不再是简单的值,而是某个对象,数组,集合时,就需要使用ognl表达式来访问这些对象,数组,集合内的数据了. 1)ognl的stack Conte

struts2学习笔记(5)----------配置result

Action只负责处理请求,负责生成响应的视图组件,一般是JSP页面,而Action为JSP页面提供显示的数据.Action处理请求结束后,控制器根据<result>元素配置的逻辑视图跟物理视图之间的关系来响应. 浏览器,控制器和视图资源的顺序图如下: 如图所示,Action处理完一个请求后,并未直接把请求转发给任何具体的视图资源,而是返回给一个逻辑视图,struts2框架收到这个逻辑视图后,把请求转发到对应的物理视图资源,试图资源将结果呈现给用户. 1)result基本配置 struts2提

struts2 学习笔记

Struts2 学习笔记 在使用J2EE编写网站的时候,我们经常会使用Struts2框架.Struts2的好处就是许多东西已经被封装好了,我们只需要包含给定的jar文件,就能够调用相应的方法和标签.下面我将简要介绍一下Struts2的使用和特点: 一.搭建Struts2的环境:(主要分为三个部分:包含lib文件.web.xml改写.新建一个Struts.xml) 1.打开myeclise软件,新建一个Dynamic web project,在WebContent/WEB-INF文件夹下的lib文