new ActionForward和mapping.findForward(请求重定向和转发)
2012-07-12 10:54
323 查看
new ActionForward和mapping.findForward(请求重定向和转发)
1.struts 中return new ActionForward(URI,true) 与 <forward name = "/success" path = "/page/success.jsp"/>。
1. 在ACTION里 使用
String URI = "";
return new ActionForward(URI,true);的组合,一般是因为需要在request中加入 parameter ,但如果此时在这个action里试图加入 Attribute,则转向的页面将接收不到 Attribute的值。
2. 使用return new ActionForward(mapping.findForward("/success"));
表示已经在struts的action-config.xml中配置了success的转向,如<forward name = "/success" path = "/page/success.jsp"/>。
补充:
ActionForward类提供了下面五种构造器:
Java代码
public ActionForward()
public ActionForward(String path) 常用
public ActionForward(String path, boolean redirect)
public ActionForward(String name, String path, boolean redirect)
public ActionForward(String name, String path, boolean redirect, boolean contextRelative)
虽然这些构造器是不需要说明的,但我们应该注意下面几点。在这些构造器中,第二种可能是最常用的。
后四种构造器中的path参数表示的是到目的资源的路径。
后三种构造器中的redirect布尔值表示的是是否执行了一个重定向(redirect)。(缺省情况下,这个值设置为false,因为redirect比forward慢。)
最后,第五个构造器中的contextRelative布尔值表示该路径是否应该是context-relative的,而不是module-relative的。
如
Java代码
return (new ActionForward("/mainMenu.jsp"));
return (new ActionForward("/login.jsp"));
1.struts 中return new ActionForward(URI,true) 与 <forward name = "/success" path = "/page/success.jsp"/>。
1. 在ACTION里 使用
String URI = "";
return new ActionForward(URI,true);的组合,一般是因为需要在request中加入 parameter ,但如果此时在这个action里试图加入 Attribute,则转向的页面将接收不到 Attribute的值。
2. 使用return new ActionForward(mapping.findForward("/success"));
表示已经在struts的action-config.xml中配置了success的转向,如<forward name = "/success" path = "/page/success.jsp"/>。
补充:
ActionForward类提供了下面五种构造器:
Java代码
public ActionForward()
public ActionForward(String path) 常用
public ActionForward(String path, boolean redirect)
public ActionForward(String name, String path, boolean redirect)
public ActionForward(String name, String path, boolean redirect, boolean contextRelative)
public ActionForward() public ActionForward(String path) 常用 public ActionForward(String path, boolean redirect) public ActionForward(String name, String path, boolean redirect) public ActionForward(String name, String path, boolean redirect, boolean contextRelative)
虽然这些构造器是不需要说明的,但我们应该注意下面几点。在这些构造器中,第二种可能是最常用的。
后四种构造器中的path参数表示的是到目的资源的路径。
后三种构造器中的redirect布尔值表示的是是否执行了一个重定向(redirect)。(缺省情况下,这个值设置为false,因为redirect比forward慢。)
最后,第五个构造器中的contextRelative布尔值表示该路径是否应该是context-relative的,而不是module-relative的。
如
Java代码
return (new ActionForward("/mainMenu.jsp"));
return (new ActionForward("/login.jsp"));
相关文章推荐
- 内部跳转(请求转发)和外部跳转(重定向)的区别?
- 在struts.xml中,如何配置请求转发和请求重定向!
- 有关请求转发与请求包含,重定向的分析
- Servlet技术-请求转发,重定向和包含的关系
- SpringMvc 重定向或者请求转发 请求路径地址
- Web---字节输出流和字符输出流的共存问题、转发、重定向、请求包含知识点讲解
- HTTP通信中的请求转发和请求重定向
- HTTP中请求转发与重定向的区别
- Jsp 重定向、请求转发
- Servlet中Request请求转发和重定向遇到的乱码问题
- 请求转发和重定向
- Java请求转发和请求重定向
- 心得10--request介绍和案例分析、请求重定向和请求转发的区别
- HTTP中的重定向和请求转发的区别
- 请求转发与重定向的区别
- springmvc结果的转发和重定向 (需求:在同一个请求中调用多个方法) (13)
- 请求转发和重定向
- Jsp 重定向、请求转发
- servlet中请求转发(forword)与重定向(sendredirect)的区别
- Request作为域对象存取数据 Request作为域对象;请求转发和重定向都可以完成页面跳转