`

type="diapatcher Redirect RedirectAction"配置文件struts.xml

阅读更多
type="diapatcher  Redirect   RedirectAction"配置文件struts.xml


一、struts2默认为Dispatcher服务器跳转
Dispatcher结果类型的实现是org.apache.struts2.dispatcher.ServletDispatcherResult,该类的二个属性(property):location和parse,这两个属性可以通过struts.xml配置文件中的result元素的param子元素来设置。param元素的name属性指定结果类型实现类的属性名,param元素的内容是属性的值。例如:
<result name=“success”  type=“dispatcher”>
<param name=“location” >/success.jsp</param>
<param name=“parse” >true</param>
</result>
其中location参数用于指定action执行完毕后要转向的目标资源,parse属性是一个布尔类
型的值,如果为true,则解析location参数中的OGNL表达式;如果为false,则不解析。
parse属性的默认值就是true
.


<action name=“viewNews” class=“com.ibm.ViewNewsAction”>
<result name=“success”  type=“dispatcher”>viewNews.jsp?id=${id}</result>
</action>


二、redirect
org.apache.struts2.dispatcher.ServletRedirectResult.在使用redirect
用户要完成一次与服务器之间的交互,浏览器需要完成两次请求

<result name=“success”  type=“redirect”>viewNews.jsp?id=${id}</result>


①浏览器发出一个请求,struts2框架调用对应的Action实例对请求进行处理;
②Action返回”success”结果码,框架根据这个结果码选择对应的结果类型,在上
图是redirect结果类型;
③ServletRedirectResult在内部使用HttpServletResponse的sendRedirect方法将
请求重定向到目标资源;
④浏览器重新发起一个针对目标资源的新的请求;
⑤目标资源作用为响应呈现给用户。


三、redirectAction
redirectAction结果类型的实现类是org.apache.struts2.dispatcher.ServletActionRedirectResult,该类是
ServletDispatcherResult的子类,因此我们也就可以判断出redirectAction结
果类型和redirect结果类型的后台工作原理是一样的,即都是利用HttpServletResponse的sendRedirect方法将请求重定向到指定的URL。

<result name=“success”  type=“redirectAction”>viewDishsDetail.action?id=${dish.id}</result>



那么redirect与redirectAction有什么区别呢?
从结果类型的名字上,我们可以大致判断出redirectAction结果类型主要是用
于重定向到action。也就是说,在请求处理完成后,如果你需要重定向到另一
个action,那么建议你使用redirectAction结果类型。












分享到:
评论

相关推荐

    java考试系统

    (C) FilterDispatcher类中的init()方法中将会读取类路径下默认的配置文件struts.xml完成初始化操作 (D) struts2读取到struts.xml的内容后,会将内容封装进Action对象中并存放在内存。 ~ 3.在Struts中提供了多种返回...

    Struts2入门教程(全新完整版)

    (2).struts.xml文件 4 (3).struts.properties(参default.properties) 4 (4)struts-default.xml 4 (5)其它配置文件 4 4.让MyEclipse提示xml信息 4 5.如何使用alt+/提示 4 6.实例 4 7.开启struts2自带的...

    javaee三大框架整合宅急送项目lib包

    3、 配置struts.xml结果页面 &lt;result name="findInStoreTaskSUCCESS"&gt;/WEB-INF/pages/zhongzhuan/instore_list.jsp &lt;result name="findOutStoreTaskSUCCESS"&gt;/WEB-INF/pages/zhongzhuan/outstore_list.jsp ...

    dangdang和smartstruts2.rar

    第五步:复制util、Factory包、复制四个src下面的配置文件。 第六步:写dao接口 UserDao BaseDao public void save(User user) throws Exception; public boolean valiEmail(String email) throws Exception; ...

    网上商城需求报告

    第五步:复制util、Factory包、复制四个src下面的配置文件。 第六步:写dao接口 UserDao BaseDao public void save(User user) throws Exception; public boolean valiEmail(String email) throws Exception; ...

    struts2中result类型之redirectAction

    struts2中result类型之redirectAction

    struts-2.3.15.1

    漏洞根源在于,DefaultActionMapper类支持以"action:"、"redirect:"、"redirectAction:"作为导航或是重定向前缀,但是这些前缀后面同时可以跟OGNL表达式,由于struts2没有对这些前缀做过滤,导致利用OGNL表达式调用...

    Struts2 in action中文版

    13.2.3 测试validation.xml文件 284 13.3 最大化重用 284 13.3.1 使用component标签组件化 285 13.3.2 重用模板化的标签 286 13.3.3 连接UI标签和对象 287 13.4 高级UI标签的使用 288 13.4.1 覆盖既有模板 288 ...

    struts2重定向实例源码

    struts result类型中redirect与redirectAction的使用 包括参数传递。

    struts应用5

    ). result 节点的 name、type 属性的具体含义 ...2)、讲授 dispatcher、redirect、redirectAction、chain 等结果类型 3)、讲授 Struts2 的 exception 映射 4)、 讲授 action 配置的通配符 5)、 讲授动态方法调用

    Apache-Struts-v4

    Apache Struts 2 2.3.x之前的2.3.x版和2.5.10.1之前的2.5.x版中的Jakarta Multipart解析器在文件上传尝试期间具有错误的异常处理和错误消息生成,这使远程攻击者可以通过精心设计的Content执行任意命令-Type,...

    SSH笔记-result标签的type的使用

    SSH笔记 result标签里面 type的使用 demo包括dispatcher、chain、redirect、redirectAction、stream

    redirectaction 出现404 - result 'null' not found例子演示

    redirectaction 出现404 - result 'null' not found例子演示

    Struts2学习笔记(8)-Result常用类型

    主要介绍Struts2中Result四种常用的类型的用法,希望能给大家做一个参考。

    acton之间传值

    action之间传值用chain,redirectAction应该不行

Global site tag (gtag.js) - Google Analytics