getRequsetDidpatcher和sendRedirect(請求轉發和重定向的區別)

1.request.getRequestDispatcher()是請求轉發,前后頁面共享一個request ;?

? ?response.sendRedirect()是重新定向,前后頁面不是一request。

? ?request.getRequestDispather();返回的是一個RequestDispatcher對象。

2.RequestDispatcher.forward()是在服務器端運行;?

? ?HttpServletResponse.sendRedirect()是通過向客戶瀏覽器發送命令來完成.?

? 所以RequestDispatcher.forward()對于瀏覽器來說是“透明的”;?

? 而HttpServletResponse.sendRedirect()則不是。

從上面可以看出,request.getRequestDispatcher()的功能相對來說比較強大。

?以下是我給的建議:

? ? (a) 如何跳轉中不需要攜帶數據,推薦使用response.sendRedirect()方法

? ? (b)如果跳轉中需要攜帶數據,推薦使用request.getRequestDispatcher(),共享一個request

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容