jsp/servlet 中sendRedirect、include和forward區別

來源:互聯網
上載者:User

sendRedirect

response.sendRedirect();

伺服器根據邏輯,發送一個狀態代碼,告訴瀏覽器重新去請求新的地址,一般來說瀏覽器會用剛才請求的所有參數重新請求,所以session,request參數都可以擷取。注意:使用request.setAttribute的內容,不能讀取了。因為不是同一個請求了。如圖所示

2  forward

(1) 在servlet裡面

request.getRequestDispatcher("jsp2.jsp").forward(request, response);

  (2) 在jsp裡面

<jsp:forward page="include.jsp" />

本欄目更多精彩內容:http://www.bianceng.cn/webkf/JSP/

頁面會是頁面2的內容,地址欄不變。使用request.setAttribute的內容,可以正常使用,因為是請求轉寄。如圖

3  include

 (1)在servlet裡面

request.getRequestDispatcher("jsp2.jsp").include(request, response);

(2) 在jsp裡面

<jsp:include page="include.jsp" />

◆頁面會同時包含頁面1和頁面2的內容,地址欄不變。

◆使用request.setAttribute的內容,可以正常擷取使用。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.