1.request.getRequestDispatcher()是請(qǐng)求轉(zhuǎn)發(fā),前后頁面共享一個(gè)request ;?
? ?response.sendRedirect()是重新定向坐儿,前后頁面不是一request。
? ?request.getRequestDispather();返回的是一個(gè)RequestDispatcher對(duì)象岔激。
2.RequestDispatcher.forward()是在服務(wù)器端運(yùn)行;?
? ?HttpServletResponse.sendRedirect()是通過向客戶瀏覽器發(fā)送命令來完成.?
? 所以RequestDispatcher.forward()對(duì)于瀏覽器來說是“透明的”漾月;?
? 而HttpServletResponse.sendRedirect()則不是熊泵。
從上面可以看出团赏,request.getRequestDispatcher()的功能相對(duì)來說比較強(qiáng)大称近。
?以下是我給的建議:
? ? (a) 如何跳轉(zhuǎn)中不需要攜帶數(shù)據(jù)谋右,推薦使用response.sendRedirect()方法
? ? (b)如果跳轉(zhuǎn)中需要攜帶數(shù)據(jù)确虱,推薦使用request.getRequestDispatcher()施蜜,共享一個(gè)request