- 使用 HttpServletResponse.sendRedirect() 方法: 這會導致向客戶端瀏覽器返回一個特殊的 HTTP 返回代碼(連同要重定向的頁面),然后客戶端瀏覽器又對重定向的目標發出新的請求。如果需要在這兩個請求之間共享數據,那就必須將數據存儲在會話或應用程 序范圍中。這類似于 ASP 中的 RESPONSE.REDIRECT() 函數。
- 使用 servlet 中的 RequestDispatcher.forward() 方法或 JSP 頁面中的特殊標簽:這 會導致調用此方法的資源終止,同時終止對作為轉發目標的資源的調用。對客戶端瀏覽器來說,這看起來就像是單個請求。例如,如果將請求從 servlet 轉發到 JSP 頁面,則您可能要附加該 servlet 中的某些處理結果,以便這些結果可以在 JSP 頁面中顯示出來。
所以response.sendRedirect()不能用request對象傳遞數據,而forward是可以的。