国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - HttpServletRequest對象簡介_動力節點Java學院整理

HttpServletRequest對象簡介_動力節點Java學院整理

2020-12-06 15:22fjdingsd Java教程

這篇文章主要為大家詳細介紹了HttpServletRequest對象簡介的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下

通過getmethod方法獲得的是客戶端訪問該web應用的http請求方式。

代碼和結果如下:

?
1
2
string requestmethod = request.getmethod();
system.out.println(requestmethod);

HttpServletRequest對象簡介_動力節點Java學院整理

想獲取客戶端發來的http請求頭中的內容可以使用如下方法:

getdateheader()

getheader(string)

getheadernames()

getheaders(string)

getintheader(string);

這些方法在各個特定的情況下能有不同的用途,體現出獲取客戶端請求頭方式的多樣性。

如通過getheader(string)可以獲取指定請求頭的數據內容:

?
1
2
string connectionstate = request.getheader("connection");
system.out.println(connectionstate);

HttpServletRequest對象簡介_動力節點Java學院整理

而通過getheadernames()可以獲取發送的所有請求頭,例:

?
1
2
3
4
5
6
enumeration e = request.getheadernames();
 while(e.hasmoreelements()) {
    string headername = (string) e.nextelement();
    string headervalue = request.getheader(headername);
    system.out.println(headername+":"+headervalue);
 }

HttpServletRequest對象簡介_動力節點Java學院整理

而通過getheaders(string)方法獲取的是某個同名頭的內容,適用于當某個請求頭有多個內容時使用。

介紹完獲取請求行和請求頭,下面介紹獲取請求數據中內容的方法:

getpatameter(string)

getparameternames()

getparametervalues(string)

getparametermap()

和getinputstream()

使用getpatameter(string)方式可以獲取請求數據中指定的數據值

代碼如下:

?
1
2
string value = request.getparameter("username");
system.out.println(value);

 

常可以在瀏覽器地址url后直接寫入參數數據來模擬get方式:

HttpServletRequest對象簡介_動力節點Java學院整理

最終在控制臺得到:

HttpServletRequest對象簡介_動力節點Java學院整理

通過getparameternames()可以獲取多個參數:

?
1
2
3
4
5
6
enumeration e = request.getparameternames();
 while(e.hasmoreelements()) {
  string paramname = (string)e.nextelement();
  string paramvalue = request.getparameter(paramname);
  system.out.println(paramname+":"+paramvalue);
 }

HttpServletRequest對象簡介_動力節點Java學院整理

HttpServletRequest對象簡介_動力節點Java學院整理

使用getparametervalues(string)有助于獲取當請求數據參數名有相同時的情況:

比如下面這種情況:

HttpServletRequest對象簡介_動力節點Java學院整理

代碼:

?
1
2
3
4
string[] values = request.getparametervalues("username");
  for(int i=0;i<values.length;i++) {
   system.out.println(values[i]);
  }

在控制臺觀察:

  HttpServletRequest對象簡介_動力節點Java學院整理

(注意:像getpatameter(string)、getparametervalues(string)等等這樣的方法,都要小心空指針異常,可能的原因在于并沒有這樣的參數,還有一種就是在url后沒有任何參數傳入,所以要特別注意,應該加入健壯性判斷。這也是編程過程中會碰到傳入參數都應該注意的問題。)

使用getparametermap()可以獲取以請求數據中參數和參數值作為的鍵值對的map集合。這樣我們就能同時獲取鍵值對。假設有如下情況:

HttpServletRequest對象簡介_動力節點Java學院整理

代碼為:

?
1
2
3
4
5
6
7
8
map<string,string[]> map = request.getparametermap();
  for(map.entry<string, string[]> entry :map.entryset()) {
  string paramname = entry.getkey();
  for(int i=0;i<entry.getvalue().length;i++){
   string paramvalue = entry.getvalue()[i];
   system.out.println(paramname+":"+paramvalue);
  }
 }

如果請求數據參數為:

HttpServletRequest對象簡介_動力節點Java學院整理

那么在控制臺上看到的則是:

HttpServletRequest對象簡介_動力節點Java學院整理

以上說明了常用的獲取數據的方式,還有一種屬于request響應對象的getinutstream方法,而這個方法一般只用于大容量的數據獲取,比如文件上傳,將在之后的篇章中介紹。

下面介紹其他常用方法

通過getrequesturi方法和getrequesturl可以獲取http請求服務器資源的uri和url,關于uri和url的區別可以通過獲取后的字符串來查看:

代碼:

?
1
2
3
4
5
string fileuri = request.getrequesturi();
system.out.println("uri: "+fileuri);
 
stringbuffer fileurl = request.getrequesturl();
system.out.println("url: "+fileurl.tostring());

訪問該servlet,得到:

HttpServletRequest對象簡介_動力節點Java學院整理

可以看出uri只包括在服務器中的web應用名和資源對外訪問路徑(虛擬目錄)。

通過getquerystring()方法可以獲取url上由get方式帶來的參數:

若代碼為:

?
1
system.out.println(request.getquerystring());

而我在訪問這個servlet的url上添加:“?username=fjdingsd&password=123”:

HttpServletRequest對象簡介_動力節點Java學院整理

那么當訪問這個servlet之后,在myeclipse的控制臺將看到:

HttpServletRequest對象簡介_動力節點Java學院整理

通過getremoteaddr方法可以獲取訪問該web應用的客戶端ip地址。

代碼:

?
1
system.out.println(request.getremoteaddr());

而通過getremotehost方法獲取的是訪問該web應用的客戶端主機名,如果沒有在dns服務器上注冊的則是獲取ip地址。這里說的主機名是指在dns上注冊的,比如www.baidu.com,那么通過該方法如果從該主機上來訪問,則獲取到的是:baidu.com。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: av看片| 亚洲视频在线观看网址 | 一区二区三区有限公司 | 国产在线精品一区二区 | www.黄在线看| 日韩在线视频免费 | 欧美资源在线 | 国偷自产一区二区免费视频 | 欧美高清一区 | 亚洲成a人片在线 | 毛片一区| 精品一区二区av | 日韩精品影视 | 国产三级网站 | av在线大全| 亚洲精品v | 日本黄色大片免费看 | 精品久久久久久亚洲精品 | theporn国产在线精品 | www.av在线.com| 成人久久久 | 黄片毛片免费观看 | 欧美日韩高清在线 | 欧美黄色电影在线 | 欧美大片免费影院在线观看 | 欧美视频在线播放 | 欧美一区二区在线刺激视频 | 国产精品免费视频观看 | 高清中文字幕 | 欧美日韩国产高清 | 久久精品一区 | 日韩a∨ | 亚洲欧美一区二区三区四区 | 91久久综合亚洲鲁鲁五月天 | 精品免费视频 | 日韩午夜在线视频 | 操av在线 | 国产一区二区三区四区五区密私 | 国产精品一二区 | 成人午夜精品久久久久久久蜜臀 | 亚洲一区二区av |