Redirect和Dispatcher 區別


使用forward是服務跳轉,瀏覽器不知道它所請求的具體資源來源,瀏覽器的地址欄不會變;
使用redirect,服務端根據邏輯,發送一個狀態碼,告訴瀏覽器重新去請求那個地址.所以地址欄顯示的是新的URL。

request.getRequestDispatcher("test.jsp").forward(request, response);//轉發到test.jsp
response.sendRedirect("test.jsp");//重定向到test.jsp
重定向:以前的request中存放的變量全部失效,並進入一個新的request作用域。
轉發:以前的request中存放的變量不會失效,就像把兩個頁面拼到了一起。

forward,轉發頁面和轉發到的頁面可以共享request里面的數據.
redirect,不能共享數據.


免責聲明!

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



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