zoukankan      html  css  js  c++  java
  • Struts1中ActionForward的技巧介绍


              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,也会给程序带来便利。
  • 相关阅读:
    AtCoder Beginner Contest 205
    Codeforces Round #725 (Div. 3)
    Educational Codeforces Round 110 (Rated for Div. 2)【A
    Codeforces Round #722 (Div. 2)
    AtCoder Beginner Contest 203(Sponsored by Panasonic)
    AISing Programming Contest 2021(AtCoder Beginner Contest 202)
    PTA 520 钻石争霸赛 2021
    Educational Codeforces Round 109 (Rated for Div. 2)【ABCD】
    AtCoder Beginner Contest 200 E
    Educational Codeforces Round 108 (Rated for Div. 2)【ABCD】
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/3862511.html
Copyright © 2011-2022 走看看