简单说明一下result的name属性和type属性:
SUCCESS:Action正确的执行完成,返回相应的视图,success是name属性的默认值;
NONE:表示Action正确的执行完成,但并不返回任何视图;
ERROR:表示Action执行失败,返回到错误处理视图;
INPUT:Action的执行,需要从前端界面获取参数,INPUT就是代表这个参数输入的界面,一般在应用中,会对这些参数进行验证,如果验证没有通过,将自动返回到该视图;
LOGIN:Action因为用户没有登陆的原因没有正确执行,将返回该登陆视图,要求用户进行登陆验证。
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指定字符集;
http://hi.baidu.com/javagarden/blog/item/5db9a6dd742909335882dd74.html
分享到:
相关推荐
通过对Struts2中`Result`与`Type`的理解和运用,可以更加灵活地控制页面的流向和展示形式,从而提高应用程序的可维护性和扩展性。希望本文能帮助读者更好地掌握这些核心概念,并在实际项目开发中发挥出应有的作用。
`<result>`元素的`name`属性表示结果的逻辑名称,而`type`属性则指定了使用哪种Result Type。例如: ```xml <action name="saveUser" class="com.example.SaveUserAction"> <result name="success" type="redirect...
本笔记将深入探讨`Result`标签的`type`属性以及其不同类型的用法,包括`dispatcher`、`chain`、`redirect`、`redirectAction`和`stream`。 首先,`dispatcher`是最常用的`Result`类型,它将请求转发到指定的页面。...
<result name="success" type="redirectAction"> <param name="actionName">anotherAction <param name="namespace">/admin </result> ``` 这里的`param`标签用于传递参数,`actionName`和`namespace`分别表示要...
<result name="error" type="redirect"><param name="">/xxx.jsp</param></result> ``` 在上面的配置中,使用 Redirect-action 配置将结果重定向到一个 Action,同时传递参数 Xml 代码。Redirect 配置则不同,它...
#### Name属性详解 **定义与用途:** - `name` 属性主要用于标识表单元素,并且通常用于提交表单数据时作为字段名。 - `name`在表单元素中非常常见,特别是那些需要提交数据到服务器的输入框、复选框、单选按钮等。...
`result`有两个关键属性:`name`和`type`。本文将详细介绍这两个属性的意义及其应用场景。 #### 二、Name 属性 `name`属性用来定义执行结果的名称,它决定了控制器执行完成后将采取哪种行为。Struts2提供了几种...
综上所述,`Redirect`类型的`Result`在Struts2框架中扮演着重要角色,它是控制Web应用程序流程,确保用户体验和系统稳定性的有效手段。在实际开发中,开发者需要根据需求选择合适的`Result`类型来达到最佳的效果。
以上是 `Extjs` 中常用的表单类及其属性和方法的详细介绍,这些类和方法提供了丰富的功能,帮助开发者快速构建功能完备的 Web 表单应用。通过掌握这些基础知识,可以有效地提高开发效率并确保应用程序的质量。
在这个例子中,`User`实体类的属性`userId`、`username`和`email`分别对应数据库表中的`user_id`、`user_name`和`user_email`字段。 其次,除了使用`<resultMap>`,我们还可以在`<select>`、`<insert>`、`<update>`...
对于上传多个文件,我们可以设置多个这样的输入字段,每个字段具有不同的name属性。例如: ```html <input type="file" name="file1"> <input type="file" name="file2"> ``` 在Struts2中,我们需要配置Action类来...
<result name="success">/WEB-INF/jsp/searchResults.jsp</result> <result name="error">/WEB-INF/jsp/errorPage.jsp</result> ``` 2. **审查Action代码**:在Action类中,确认是否根据业务逻辑的不同结果...
### Struts2属性文件struts.xml的配置 在Java Web开发中,Struts2框架作为MVC模式的一种实现,提供了一种简洁的方式来构建应用程序。其中,`struts.xml`是Struts2的核心配置文件,用于定义项目的包、常量、拦截器等...
if (result.getType() == HitTestResult.Type.FEATURE) { Feature feature = ((FeatureResult) result).getFeature(); // 在这里获取并显示属性表数据 displayCallOut(feature); } } return false; } }); ``...
Java 实体类字段自定义-数据库字段和程序实体类属性不一致解决方案 Java 实体类字段自定义是指在 Java 开发中,实体类的字段与数据库表的字段不一致的问题。这种情况下,需要实现实体类字段的自定义,以便与数据库...
<result name="input" type="dispatcher">/name.jsp</result> ``` 在这个例子中,“login”是动作的名称,“com.action.Search”是指向实现该动作的具体 Java 类。`<result>` 元素则定义了不同的执行结果以及对应...
1. `name`:这是结果类型(Result Type)的标识符,通常对应于一个结果处理器。例如,"dispatcher"是默认的结果类型,它将控制权传递给一个JSP页面或者Servlet。 2. `type`:这个属性允许我们指定自定义的结果...
- **type属性**:可选,用于指定结果类型的别名,默认为`dispatcher`。 **示例**: ```xml <result name="success" type="dispatcher">/success.jsp</result> <result name="error" type="dispatcher">/error.jsp...
在Struts2中,JSON(JavaScript Object Notation)和`type`属性是两个重要的概念,特别是在处理异步请求和页面跳转时。 1. JSON: JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。...
在实体类的类级别上,可以使用`@Results`注解,然后在每个属性上使用`@Result`注解来定义映射关系。例如: ```java @TableName("user") public class User { @TableId("user_id") private Long id; @Result...