简单说明一下result的name属性和type属性:
name属性相关值:
SUCCESS:Action正确的执行完成,返回相应的视图,success是name属性的默认值。
NONE:表示Action正确的执行完成,但并不返回任何视图。
ERROR:表示Action执行失败,返回到错误处理视图。
INPUT:Action的执行,需要从前端界面获取参数,INPUT就是代表这个参数输入的界面,一般在应用中,会对这些参数进行验证,如果验证没有通过,将自动返回到该视图。
LOGIN:Action因为用户没有登陆的原因没有正确执行,将返回该登陆视图,要求用户进行登陆验证。
type属性相关值:
dispatcher:请求转发,底层调用RequestDispatcher的forward()或include()方法,dispatcher是 type属性的默认值,通常用于转向一个JSP,localtion指定JSP的位置,parse如果为false表示location的值不会被当作 OGNL解析,默认为true。
redirect:重定向,新页面无法显示Action中的数据,因为底层调用response.sendRedirect("")方法,无法共享请求范围内的数据,参数与dispatcher用法相同。
redirect-action:重定向到另一个Action,参数与chain用法相同,允许将原Action中的属性指定新名称带入新Action 中,可以在Result标签中添加 <param name=”b”>${a} </param>,这表示原Action中的变量a的值被转给b,下一个Action可以在值栈中使用b来操作,注意如果值是中文,需要做一些编码处理,因为Tomcat默认是不支持URL直接传递中文的!
velocity:使用velocity模板输出结果,location指定模板的位置(*.vm),parse如果为false,location不被OGNL解析,默认为true。
xslt:使用XSLT将结果转换为xml输出,location指定*.xslt文件的位置,parse如果为false,location不被 OGNL解析,默认为true。matchingPattern指定想要的元素模式,excludePattern指定拒绝的元素模式,支持正则表达式,默认为接受所有元素。
httpheader:根据值栈返回自定义的HttpHeader,status指定响应状态(就是指response.sendError(int i)重定向到500等服务器的状态页)。parse如果为false,header的值不会被OGNL解析,headers,加入到header中的值,例如: <param name=”headers.a”>HelloWorld </param>。可以加多个,这些键-值组成HashMap。
freemaker:用freemaker模板引擎呈现视图,location指定模板(*.ftl)的位置,parse如果为false,location的值不会被OGNL解析。contentType指定以何中类型解析,默认为text/html。
chain:将action的带着原来的状态请求转发到新的action,两个action共享一个ActionContext,actionName指定转向的新的Action的名字。method指定转向哪个方法,namespace指定新的Action的名称空间,不写表示与原Action在相同的名称空间;skipActions指定一个使用 , 连接的Action的name组成的集合,一般不建议使用这种类型的结果。
stream:直接向响应中发送原始数据,通常在用户下载时使用,contentType指定流的类型,默认为 text/plain,contentLength以byte计算流的长度,contentDisposition指定文件的位置,通常为 filename=”文件的位置”,input指定InputStream的名字,例如:imageStream,bufferSize指定缓冲区大小,默认为1024字节。
plaintext:以原始文本显示JSP或者HTML,location指定文件的位置,charSet指定字符集。
struts2配置文件
<action name="audit_*" method="{1}" class="auditAction"> <result name="view">/WEB-INF/pages/admin/license/audit_view.jsp</result> <result name="add" type="redirectAction"> <param name="actionName">license_auditUI</param> <param name="namespace">/admin/license</param> <param name="licenseNum.num_id">${license.licenseNum.num_id}</param> </result> </action>
注意struts2.1后,redirectredirectAction_action更改为redirectAction
相关推荐
- **struts.xml**:这是Struts2框架的核心配置文件,定义了应用程序中的Action映射、结果类型以及拦截器等关键配置信息。它主要包含以下几个元素: - `package`:表示一个包,其中可以包含多个Action。 - `action`...
**Result** 在 Struts2 配置文件(通常是 struts.xml)中被定义,用来指定 Action 处理完业务逻辑后如何响应客户端请求。例如,可以配置 Result 来重定向到另一个 JSP 页面或者另一个 Action。 当开发者希望在 ...
在Struts2中,Action之间的跳转主要通过配置文件(通常为struts.xml)来实现。下面将具体介绍两种常见的跳转方式及其参数传递的方法: 1. **使用`chain`类型的结果** 在struts.xml配置文件中,可以通过设置结果...
然后,我们创建Struts2的核心配置文件`struts2.xml`。这是一个XML文件,它定义了应用程序的行为和映射。例如: ```xml <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//...
### Struts2配置文件及其代码示例解析 #### 一、Struts2概述 Struts2是一个基于MVC模式的开源Web应用框架,它继承了Struts1的优点,并且进行了大量的改进,支持拦截器、结果类型、动态方法调用等功能。在Struts2中...
Struts2允许动态Action名称,使得Action无需预先在配置文件中声明,可以根据请求参数动态解析Action。 9. **常量配置** `struts.properties`文件用于全局常量的配置,如错误页面、主题样式等。这些常量在整个应用...
在Struts2中,配置文件通常以`struts.xml`命名,它定义了不同的组件,如action、结果类型、拦截器等。 配置文件的根元素是`<struts>`,它可以包含以下四个子元素: 1. `<package>`:定义了一个行为或功能相关的...
《Struts2配置文件宝典》一文详细阐述了Struts2框架中配置文件的核心概念与实践技巧,尤其聚焦于如何高效地管理拦截器、包(package)以及Action的配置,为开发者提供了一套全面而深入的理解框架配置的指南。...
本文将深入解析Struts2的配置文件,帮助开发者更好地理解和使用这一框架。 首先,我们来看Struts2的主配置文件,通常命名为struts.xml或struts-default.xml。这个文件位于项目的类路径下,并遵循XML语法。在该文件...
Struts 2 配置文件解析与深度剖析 在Java Web开发领域,Struts 2 框架作为MVC(Model-View-Controller)架构模式的杰出代表,以其强大的功能和灵活的配置赢得了广大开发者的青睐。Struts 2 的核心配置文件struts....
#### 一、Struts配置文件概述 在Struts框架中,`struts.xml`配置文件扮演着极其重要的角色。它主要用于定义应用中的各种配置信息,包括但不限于包(Package)、拦截器(Interceptor)、Action以及结果(Result)等...
Struts2作为一款强大的MVC框架,其核心配置文件`struts.xml`在应用程序中扮演着至关重要的角色。本文将深入解析`struts.xml`中的Action配置,帮助开发者更好地理解和运用这一关键组件。 首先,Action配置是Struts2...
若需要实现自定义的配置管理器,则需创建一个实现了`Configuration`接口的类,并在类中实现Struts 2配置文件的加载逻辑。 #### struts.locale 此属性指定了Web应用的默认Locale设置,用于确定应用的语言环境和区域...
在Struts2中,注解的引入使得开发者可以摆脱繁琐的`struts.xml`配置文件,实现“零配置”运行。 首先,让我们了解什么是注解(Annotation)。注解是Java提供的一种元数据机制,允许在源代码中嵌入信息,这些信息...
7. **FilterDispatcher(或StrutsPrepareAndExecuteFilter)**: 这是Struts2的前端控制器,负责接收HTTP请求,解析请求参数,并根据配置文件调度Action。 8. **Tiles2**: Struts2集成了Tiles2框架,用于构建复杂的...
然后,ActionServlet根据配置文件(struts-config.xml)找到对应的Action类,并将ActionForm中的数据传入Action类,执行业务逻辑。最后,Action返回一个ActionForward对象,Dispatcher根据这个对象决定转发到哪个JSP...
在Struts2的配置文件(通常为struts.xml或struts.properties)中,我们定义Action的映射规则,包括请求路径、方法调用以及结果视图等。默认情况下,一个Action类对应一个请求URL,但通过特定配置,可以让一个Action...
2. Struts2 Filter解析请求,并根据struts.xml配置文件找到对应的Action。 3. Action执行业务逻辑,可能涉及到服务层和数据访问层的操作。 4. Action执行完成后,返回一个Result,可以是视图(如JSP页面)、重定向...