JSP常用的幾種跳轉方式


一,  使用href超鏈接標記              (客戶端跳轉)

二,  提交表單                            (客戶端跳轉)

    <form name="form" method="post" action="page2.jsp">

              <input type="submit" value="跳轉1">

          </form>

三,  Javascrip事件       (客戶端跳轉)

    <input type="button" value="跳轉2" onclick="next()">

        <script type="text/javascript">

              function next(){

                  window.location = "page2.jsp";

              }

         </script>

四,  使用response對象     (客戶端跳轉)(重定向)

    <%  response.sendRedirect("page2.jsp"); %>         //sendRedirect()可以帶參數傳遞,后面應該緊跟一句return

    <%   response.setHeader("Refresh", "1;url=page2.jsp"); %>  //1秒后,刷新,並跳到,page2.jsp頁面

五,  使用forward動作標記   (服務器端跳轉)(轉發)

    jsp自帶的forword標簽來實現跳轉    <jsp:forward page="page2.jsp" /> 

六,   使用RequestDispatcher類     (服務器端跳轉)(轉發) 

    <% request.getRequestDispatcher("page2.jsp").forward(request, response);%>  

response重定向和forward跳轉和RequestDispatcher的區別

(1) response重定向

    執行完頁面的所有代碼,再跳轉到目標頁面。
    跳轉到目標頁面后,瀏覽器地址欄中的URL會改變。
    在瀏覽器端重定向。
    可以跳轉到其它服務器上的頁面,response.sendRedirect(“http://www.baidu.com”)

(2) forward跳轉

    forward動作標記之后的代碼,不再執行,直接跳轉到目標頁面。
    跳轉到目標頁面后,瀏覽器地址欄中的URL不會改變。
    在服務器端重定向。
    無法跳轉到其它服務器上的頁面。

    指定目標頁面時,既可以使用絕對路徑,也可以使用相對路徑。

(3) RequestDispatcher跳轉

    執行完所有代碼,包括RequestDispatcher之后的所有代碼,再跳轉到目標頁面。
    跳轉到目標頁面后,瀏覽器地址欄中的URL不會改變。
    在服務器端重定向。
    無法跳轉到其它服務器上的頁面。

    指定目標頁面時,只能使用絕對路徑。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM