struts1之global-forwards

当你的某个转发要经常用,并且要携带某些数据(request)的时候用全局转发,也就是global-forwards,例如我们在分页的时候,或者得到数据列表的时候。。
ForwardAction呢,是为了先把请求发到控制器,比如说你把文件或者页面放到WEB-INF下,也可以拿ForwardAction来访问。
说说这个有几个好处,
一预处理功能,假如在struts的多模块应用开发中,经常使用这个,可以正确的识别子应用模块。并把MoudelConfig和MessageResouces存放在request中,因为之前经过了actionservlet的处理
二可以使用actionFrom来封装你提交的表单,如果你配置,validate=true那还会有验证功能
三符合MVC的设计思想。

 

global-forwards 是全局的forward,把一些经常使用的页面做成global,就不用每次都在action里面配置forward了,至于ForwardAction,是struts帮你写好的一个action,里面没有任何业务逻辑,只是跳转到一个指定的页面,如果你要只是要转发一个页面,而又要遵循从Action访问页面的话,那你就直接用这个类就行了,剩下你自己建类的麻烦

 

global-forwards用于配置全局转发,struts首先会在<action-mappings>元素中找对应的<forward>,若找不到,则到全局转发配置中找。它包含0个或多个<forward/>元素,格式如下所示:

<forward name="唯一的名称" path="指向资源的相对路径"/>

Eg.

<global-forwards>

                   <forward name="failed" path="/error.jsp" />

                   <forward name="success" path="/ success.jsp" />

</global-forwards>

<forward/>元素还有一个redirect属性,其默认值为false,如果redirect设为true的时候,则用HttpServletResponse.sendRedirect()方法,否则用RequestDispatcher.forward()方法,缺省为false

 

原文地址:https://www.cnblogs.com/iamconan/p/7383635.html