使用forward是服務跳轉,瀏覽器不知道它所請求的具體資源來源,瀏覽器的地址欄不會變;
使用redirect,服務端根據邏輯,發送一個狀態碼,告訴瀏覽器重新去請求那個地址.所以地址欄顯示的是新的URL。
request.getRequestDispatcher("test.jsp").forward(request, response);//轉發到test.jsp
response.sendRedirect("test.jsp");//重定向到test.jsp
重定向:以前的request中存放的變量全部失效,並進入一個新的request作用域。
轉發:以前的request中存放的變量不會失效,就像把兩個頁面拼到了一起。
forward,轉發頁面和轉發到的頁面可以共享request里面的數據.
redirect,不能共享數據.
