jsp九大內置對象之一request


      request對象,目的是用來獲取客戶端的請求。

      主要方法有:

request.getMethod();                      // 獲取提交請求的方式

request.getProtocol();                    // 獲取請求的協議

request.getRequestURL();              // 獲取請求目標網絡路徑
request.getServletPath();               // 獲取請求目標的在項目中的相對路徑

 

 

request.getServerName();              // 獲取服務器名稱/ip
request.getServerPort();                // 獲取服務器端口號
request.getRemoteAddr();              // 客戶端IP
request.getRemoteHost();              // 客戶端主機
request.getCharacterEncoding();     // 對請求編碼
request.getParameter("username"); // 獲取提交過來的數據
request.getRequestURI();               // 獲取請求目標的相對路徑
request.getQueryString();               // 獲取請求的全部參數(可以用作登錄成功返回某一路徑)

 

 還有request.setAttribute("",""); request.getAttribute("");  這里對它和request.getParamter(""); 區分一下,首先要明白轉發和重定位的概念。

 轉發:現實的例子是小明讓小李做某件事,但是小李自己做不了或者不想做,於是將這件事告訴小王,小王做了這件事還可以將這件事交給小孫。。。,在整個事件中小明只是知道把這件事交給了小李,至於其它人他不知道。編程的知識是:轉發源的瀏覽器地址欄地址是不變的,也就是小明看到的一直是小李的地址,在后面小李、小王之間不斷告訴這件事所以是可以共享數據的。轉發的代碼是:request.getRequestDispatcher().forwar(request,response);  重點是地址不變,共享數據,所以可以設置

request.setAttribute("",""); request.getAttribute("");來共享數據。還可以獲取其余數據,也就是小李獲取的數據小王和小孫都能獲取,他們時間還可以共享數據。

 重定位:現實的例子是小明讓小李做某件事但是小李不做,小明又讓小王做。。。,整件事小明都知道誰參與了,在編碼中就是瀏覽器的地址在不斷的變化,只要瀏覽器的地址變化都可以算作重定位比如表單提交,鏈接,和response.sendRedirect(""); 重點是不共享數據只能通過request.getParameter(""); 將數據寫入request流中。

 上面的小明、小李是web組件是jsp html servlet都可以。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM