request.getRequestDispatche("").forward(request,response) 與 response.sendRedirect("")的區(qū)別

          1、forward重定向是在容器內部實現(xiàn)的同一個Web應用程序的重定向,所以forward方法只能重定向到同一個Web應用程序中的一個資源, 重定向后瀏覽器地址欄 URL 不變 ,而sendRedirect方法可以重定向到任何URL, 因為這種方法是修改http頭來實現(xiàn)的,URL沒什么限制, 重定向后瀏覽器地址欄 URL 改變
          2、forward重定向將原始的HTTP請求對象(request)從一個servlet實例傳遞到另一個實例,而采用sendRedirect方式兩者不是同一個application。
          3、基于第二點,參數的傳遞方式不一樣。forward的form參數跟著傳遞,所以在第二個實例中可以取得HTTP請求的參數。sendRedirect只能通過鏈接傳遞參數,response.sendRedirect(“ login.jsp?param1=a”)。
          4、sendRedirect能夠處理相對URL,自動把它們轉換成絕對URL,如果地址是相對的,沒有一個‘/’,那么Web container就認為它是相對于當前的請求URI 的。比如,如果為response.sendRedirect("login.jsp"),則會從當前servlet 的URL 路徑下找login.jsp: http://10.1.18.8:8081/dms/servlet/Servlet 重定向的URL: http://10.1.18.8:8081/dms/servlet/login.jsp ,如果為response.sendRedirect("/login.jsp")則會從當前應用徑下查找url:http://10.1.18.8:8081/login.jsp 。而forward不能這樣處理相對路徑。

          posted on 2008-12-07 12:30 丁克設計 閱讀(1251) 評論(0)  編輯  收藏 所屬分類: j2ee技術文檔

          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          導航

          留言簿(6)

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          主站蜘蛛池模板: 多伦县| 沽源县| 繁昌县| 巨野县| 富蕴县| 霸州市| 太湖县| 清水河县| 武城县| 济宁市| 贵港市| 长宁县| 响水县| 石城县| 高淳县| 开化县| 迭部县| 湛江市| 巍山| 万盛区| 祁门县| 九龙坡区| 汝阳县| 河北省| 建瓯市| 林甸县| 华宁县| 西丰县| 封丘县| 毕节市| 万山特区| 安吉县| 启东市| 金湖县| 五常市| 南漳县| 江津市| 浮梁县| 宽城| 永昌县| 永福县|