struts2的result的类型配置简介
一.在strut2的action处理完成后,就应该向用户返回结果信息result
根据以下代码作为实例分析:
<package name="Hello" extends="struts-default">
<global-results>
<result name="error">error.jsp</result>
</global-results> <action name="hello" class="com.qgx.action.Student">
<result name="success" type="dispatcher">success.jsp</result>
<result name="r" type="redirect">success.jsp</result>
<result name="c" type="chain">hello2</result>
<result name="ra" type="redirectAction">hello2</result>
</action> <action name="hello2" class="com.qgx.action.Student2">
<result name="success">success.jsp</result>
</action> </package>
1.dispatcher(为默认的type )
org.apache.struts2.dispatcher.ServletDispatcherResult类的方法
为result的默认类型,用来呈现jsp的页面
请求转发,底层调用RequestDispatcher的forward()或include()方法,dispatcher是 type属性的默认值,通常用于转向一个JSP。localtion指定JSP的位置,parse如果为
false表示location的值不会被当作 OGNL解析,默认为true。
为服务器端调转,浏览器的地址栏url不会发生变化,请求的内容在转发前后是共享的,可以带参数过去
2.redirect(重定向)
org.apache.struts2.dispatcher.ServletRedirectResult
将用户重定向到一个已配置好的URL
底层调用response.sendRedirect("")方法
重定向为客户端跳转,会改变URL地址,请求的内容在跳转前后不共享,也就是不带参数跳转
3.chain(链式)
com.opensymphony.xwork2.ActionChainResult
将action和另外一个action链接起来
将action的带着原来的状态请求转发到新的action,两个action共享一个ActionContext,actionName指定转向的新的Action的名字。
method指定转向哪个方法,namespace指定新的Action的名称空间,不写表示与原Action在相同的名称空间;
skipActions指定一个使用 , 连接的Action的name组成的集合,一般不建议使用这种类型的结果
4.redirectAction(重定向到Action)
org.apache.struts2.dispatcher.ServletActionRedirectResult
将用户重定向到一个已定义好的action
重定向到另一个Action,参数与chain用法相同,允许将原Action中的属性指定新名称带入新Action 中,可以在Result标签中添加 <param name=”b”>${a} </param>,
这表示原Action中的变量a的值被转给b,下一个Action可以在值栈中使用b来操作,注意如果值是中文,需要做一些编码处理,因为Tomcat默认是不支持URL直接传递中文的!
5.result全局配置,所有Action都可以共享
<global-result></global-result>
上述4个为常见的result类型,其他几个了解,不常用
说明 result 的 name 属性:
SUCCESS :Action正确的执行完成,返回相应的视图,success是name属性的默认值。
NONE :表示Action正确的执行完成,但并不返回任何视图。
ERROR :表示Action执行失败,返回到错误处理视图。
INPUT :Action的执行,需要从前端界面获取参数,INPUT就是代表这个参数输入的界面,一般在应用中,会对这些参数进行验证,如果验证没有通过,将自动返回到该视图。
LOGIN :Action因为用户没有登陆的原因没有正确执行,将返回该登陆视图,要求用户进行登陆验证。
struts2的result的类型配置简介的更多相关文章
- struts2 action result type类型
struts2 action result type类型 1.chain:用来处理Action链,被跳转的action中仍能获取上个页面的值,如request信息. com.opensymphony. ...
- Struts2笔记——result结果类型
result > 每个 action方法都将返回一个 String 类型的值,Struts 将根据这个值来决定响应什么结果. > 每个 Action声明都必须包含有数量足够多的 resul ...
- Struts2的result返回类型
- Struts2中 Result类型配置详解
一个result代表了一个可能的输出.当Action类的方法执行完成时,它返回一个字符串类型的结果码,框架根据这个结果码选择对应的result,向用户输出.在com.opensymphony.xwor ...
- struts2 中的 result 返回类型是 json 的配置问题
struts2 中的 result 返回类型是 json 的配置问题 1.引入包(本文中的包全部引自struts-2.1.8.1\lib): struts2-json-plugin-2.1.8.1.j ...
- struts2 result type类型
result标签中type的类型 类型 说明 chain 用于Action链式处理 dispatcher 用于整合JSP,是<result>元素默认的类型 freemarket 用来整合F ...
- Struts2自定义返回Json类型result
本来Struts2有自己的json类型的返回结果,并提供了插件,但是它有一个问题,那就是它会将所有序列化的字段都返回,如果想要制定返回Action的某一个属性,则需要在配置result时,配置参数(这 ...
- Struts2(六)result
一.result简述 result:输出结果:第个Action返回一个字符串,Struts2根据这个值来决定响应结果 name属性:result的逻辑名.和Actin里的返回值匹配,默认"s ...
- Struts2基于注解的Action配置
使用注解来配置Action的最大好处就是可以实现零配置,但是事务都是有利有弊的,使用方便,维护起来就没那么方便了. 要使用注解方式,我们必须添加一个额外包:struts2-convention-plu ...
随机推荐
- Distributed Phoenix Chat with PubSub PG2 adapter
转自:https://www.poeticoding.com/distributed-phoenix-chat-with-pubsub-pg2-adapter/ In this article we’ ...
- C语言面试题1
1.分析下面代码有什么问题? 1 2 3 4 5 6 void test1() { char string[10]; char* str1 = "0123456789"; s ...
- JavaScript编码风格
最近在看前端大牛Nicbolas C.Zakas的<编写可维护的JavaScript代码>一书.觉得里面的很多知识点都写的很好,所以,就写篇博文,总结一下吧!编码规范对于程序设计来说是很重 ...
- spring boot 学习资料
spring boot 学习资料: 学习资料 网址 Spring Boot Cookbook-极客学院 http://wiki.jikexueyuan.com/project/spring-boot- ...
- optimization.splitChunks 中,chunks 的3个值:all、async、initial 的含义
chunks 参数值 含义 all 把动态和非动态模块同时进行优化打包:所有模块都扔到 vendors.bundle.js 里面. initial 把非动态模块打包进 vendor,动态模块优化打包 ...
- Linux下批处理文件编写
linux下的批处理文件,基本就是shell脚本文件. 一.最简单的脚本书写方法为: 1.新建一个文件,名字为test(自己定义的名字) touch test.sh 2.在里面编写脚本 程序必须以下面 ...
- Windows系统下MySQL数据库出现Access denied for user 'root'@'localhost' (using password:YES) 错误
Windows系统下MySQL数据库出现Access denied for user 'root'@'localhost' (using password:YES) 错误,(root密码错误) 处理方 ...
- [转CSDN多篇文章]WEB 3D SVG CAD 矢量 几种实现方案
WEB 3D SVG CAD 矢量 几种实现方案 原创 2014年10月24日 08:34:11 标签: WEB3D / CADSVG / 矢量 2665 一.全部自己开发,从底层开始 VML+SVG ...
- [转]阿里云CentOS 7.1使用yum安装MySql5.6.24
阿里云CentOS 7.1使用yum安装MySql5.6.24 作者:vfhky | 时间:2015-06-25 09:43 | 分类:web 在前面两篇文章<2015博客升级记(四):Cent ...
- 解决cron无法运行报错:FAILED to authorize user with PAM (Module is unknown)
查看cron运行日志 tail -f /var/log/cron 报如下错误: May 8 10:14:01 localhost crond[9399]: (root) FAILED to autho ...