url的有效性2011-6-23

   今天改bug時,學習到了關於url有效性的問題的正確的認識。以前認爲jsp通過url跳轉時,跳到action中後url就失效了。其實這個認識是錯誤的,url還是有效的,jsp頁面還是可以取到url後面跟的參數。

過程如下:

page.jsp頁面點擊第二頁就會跳轉到http://localhost:8080/hep/do/learningDesign?action=page&plan_mark=navigation&planId=1&pager.offset=4這個url

 

經過action處理後跳到page.jsp頁面,在page.jsp頁面中還是可以通過request.getParameter("planId")取到url中的planId這個參數。

 

 

    今天又遇到了這個問題,翻了一下書,系統的瞭解一下其中的奧祕。原來web組件中有三種關聯關係。

1.轉發

Servlet類使用javax.servlet.RequestDispather.forward()方法來轉發所收到的Http請求。

目標組件和源組件共用一個HttpServletRequest對象,共享一個request範圍內的共享數據。
2.重定向

response.sendRedirect();

目標組件和源組件不共用一個HttpServletRequest對象,所以不共享一個request範圍內的數據。


3.包含

include

目標組件和源組件共享一個HttpServletRequest對象,共享一個request範圍內的數據。

因爲開頭的那個例子屬於轉發關係,所以共享request範圍內的數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章