首页 > java > Struts1中ActionForward的技巧介绍

Struts1中ActionForward的技巧介绍

2010年3月31日 发表评论 阅读评论
ActionForward是做什么的?他是用来封装转发和重定向路径的。
   在struts- config.xml中<forward name="error" path="/login.jsp"></forward>默认的是转发处理,转发的特点:是使用同一个 request,而重定向的url地址会改变,而转发的url地址是不变的。重定向是从浏览器跳转的, 等于又发送了一个请求,因此使用的不是同一个request,所以他的 url地址会改变。在这想变为重定向,需要使用另一个属性:redirect="true",设置成true,就变成重定向了。
 
错误页面是网站发生错误了要跳转到的页面,所以应该使用重定向来实例。让地址也变到错误页面的地址。

<forward name="error" path="/error.jsp" redirect="true"></forward>

 
定义全局forward:
使用标签<global-forwards>来定义全局forward:
<global-forwards>

 <forward name="login" path="/login.jsp" redirect="true"/>

 </global-forwards>
 
全局forward是都可以访问的,但是当需要使用forward时,struts自动按就近原则来选 择。当局部也有定义时,就按照局部的来转。
 
所以对以公共的内容,就可以定义到全局里,例如错误和登录处理等。
 
动态ActionForward:
 
静态ActionForward在运行期改不了,采用动态ActionForward,在运行期是可以 改动的。
 

 String page = request.getParameter("page");

 

ActionForward af = new ActionForward("/page" + page + ".jsp?name=wenhq",true);
// true不使用转向,默认是false代表转向
 return af;

静态的 ActionForward的url是不能加参数的,而使用动态的ActionForward,则可以加参数。
 
1、正确使用转发和重定向对于网站的url显示会显得更加友好.

2、适当的全局ActionForward 会配置方便很多。

3、善于使用动态ActionForward,也会给程序带来便利。

 

分类: java 标签: 4,869 次阅读
原文链接:http://www.wenhq.com/article/view_437.html
欢迎转载,请注明出处:亲亲宝宝
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.