request物件和response物件的原理:
tomcat伺服器會根據請求url路徑,建立相對應的物件。
tomcat伺服器,會建立request和response物件,request物件中封裝請求訊息資料。
tomcat將request和response兩個物件傳遞給service方法,並且呼叫service方法
request和response物件都是由伺服器建立的,我們來使用他們request物件繼承體系結構:request獲取請求訊息,response物件設定相應訊息
servletrequest
| 繼承
| 實現
org.apache.catalina.connector.requestfacade 類(tomcat)
request功能:
獲取請求訊息資料:
獲取請求行資料
(*)獲取虛擬目錄:/day14/?name=zhangsan http/1.1
獲取servlet路徑: /demo1
獲取get方式請求引數:name=zhangsan
(*)獲取請求uri:/day14/
獲取協議及版本:http/1.1
獲取請求頭資料
獲取請求體資料
再從流物件中拿取資料
其他功能
獲取請求引數通用方式
string getparameter(string name):根據引數名稱獲取引數值 username=zhangsan&password=123
string getparametervalues(string name):根據引數名稱獲取引數值的陣列
enumenation getparameternames:獲取所有請求引數的名稱
//迭代器,通過它可以把引數名稱迭代
mapgetparametermap:獲取所有引數的map集合
//防止亂碼:request.setcharacterencoding(「utf-8」)
請求**:一種在伺服器內部的資源跳轉方式
步驟:
通過request物件獲取請求**器物件:requestdispatcher getrequestdispatcher(string path)
使用requestdispatcher物件來進行**:forward(servletrquest request, servletresponse response)
特點:瀏覽器位址列路徑不發生變化
2. 只能**到當前伺服器內部資源中
3. **是一次請求
共享資料
setattribute(string name, object obj):儲存資料
2. object getattribute(string name):通過鍵獲取資料
3. void removeattribute(string name):通過鍵移除鍵值對
獲取servletcontext
使用輸出流,將資料輸出到客戶端瀏覽器
案例:完成重定向:
伺服器輸出字元資料到瀏覽器
//設定預設編碼
"gbk");
//建議瀏覽器使用編碼格式,在獲取流之前設定
response.
setheader
("content-type"
,"text/html;charset=utf-8"
)printwriter pw = reponse.
getwriter()
;pw.
write(""
);//亂碼原因,編譯碼使用的字符集不一樣
伺服器輸出位元組到瀏覽器 內建物件 request
request物件主要用於處理客戶端請求 request這個物件封裝了客戶端生成的 請求的所有細節,主要包括 頭資訊 系統資訊 請求方式 引數等。通過 request 物件提供的對應的方法可以處理客戶端瀏覽器提交的 請求個各項引數。request物件常用方法 方法名稱說明 string getpar...
request物件詳解
request物件代表請求物件,包含所有的客戶端傳送給伺服器端的資料。其作用域就是一次request請求。request的常用方法如下所示 獲取客戶端傳給伺服器中名稱為name的引數值 string name request.getparameter name name的值為 name 獲取客戶端傳...
Request內建物件
所謂內建物件就是已經建立好的物件 容器建立的 我們可以直接使用的物件,如果在容器裡接收到使用者的請求,則會自動建立乙個物件來處理客戶端傳送的一些資訊,這個物件就是內建物件,型別是httpservletrequest,在呼叫service方法的時候容器會自動傳遞該物件給方法。可以通過該物件內的方法,將...