最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java中request對象常用方法匯總

 更新時間:2017年02月14日 10:27:18   作者:Java開發(fā)-擱淺  
這篇文章主要為大家詳細匯總了Java中request對象的常用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文主要介紹了Java中的request對象,并且對request對象中的一些常用方法作了一點總結,如果你是Java初學者,或許這篇文章對你會有所幫助。

HttpServletRequest對象代表客戶端的請求,當客戶端通過HTTP協(xié)議訪問服務器時,HTTP請求頭中的所有信息都封裝在這個對象中,開發(fā)人員通過這個對象的方法,可以獲得客戶這些信息。

request常用方法:

一、獲取客戶機環(huán)境信息常見方法:

1.getRequestURL方法返回客戶端發(fā)出請求時的完整URL。

2.getRequestURI方法返回請求行中的資源名部分。

3.getQueryString方法返回請求行的參數(shù)部分。

4.getRemoteAddr方法返回發(fā)出請求的客戶機的IP地址。

5.getRemoteHost方法返回發(fā)出請求的客戶機的完整主機名。

6.getRemotePort方法返回客戶機所使用的網絡端口號。

7.getLocalAddr方法返回WEB服務器的IP地址。

8.getLocalName方法返回WEB服務器的主機名。

9.getMethod得到客戶機請求方式。

package com.yyz.request;

 import java.io.IOException;
 import java.io.OutputStream;

 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;

 public class RequestDemo extends HttpServlet {

   public void doGet(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException {
     /**
     * URL是URI的子集。
     * URI用來標識一個資源。
     * URL用來標識互聯(lián)網上的一個資源。
     */
     System.out.println(request.getRequestURL());//得到請求URL地址
     System.out.println(request.getRequestURI());//得到請求的資源
     System.out.println(request.getQueryString());
     System.out.println(request.getRemoteAddr());//得到來訪者IP
     System.out.println(request.getRemoteHost());
     //由于沒有在dns上注冊所以打印結果還是127.0.0.1,如果是百度訪問這個程序,則打印www.baidu.com
     System.out.println(request.getRemotePort());//得到請求的資源
     System.out.println(request.getMethod());//得到請求的資源
 }

   public void doPost(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException {
     doGet(request,response);
 }

 }

在瀏覽器地址欄輸入:http://localhost:8080/test/servlet/RequestDemo后,后臺輸出入下圖:


二、獲得客戶機請求頭:

1.getHeader(String name)方法

2.getHeaders(String name)方法

3.getHeaderNames()方法

 package com.yyz.request;

 import java.io.IOException;
 import java.util.Enumeration;

 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 //獲取請求頭
 public class RequestDemo extends HttpServlet {

   public void doGet(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException {
     String head = request.getHeader("Accept-Encoding");
     //有些瀏覽器不支持壓縮數(shù)據(jù)
     if(head.contains("gzip")){
       //輸出壓縮數(shù)據(jù)
     }else{
       //輸出不壓縮數(shù)據(jù)
     }
     //獲取指定名稱的頭的所有值
     Enumeration e = request.getHeaders("Accept-Encoding");
     while(e.hasMoreElements()){
       String value = (String ) e.nextElement();
       System.out.println(value);
     }
     System.out.println("------------------------");
     //獲取所有的頭和值
     e = request.getHeaderNames();
     while(e.hasMoreElements()){
     String name = (String)e.nextElement();
     String   value = request.getHeader(name);
     System.out.println(name+"="+value);
     }
 }

   public void doPost(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException {
     doGet(request,response);
 }

 }

在瀏覽器訪問該程序,后臺輸出如下:

三、獲得客戶機請求參數(shù)(客戶端提交的數(shù)據(jù)):

1.getParameter(name)方法

2.getParameterValues(String name)方法

3.getParameterNames方法

4.getParameterMap方法,做框架時大量使用

package com.yyz.request;
 import java.io.IOException;
 import java.util.Enumeration;
 import java.util.Map;
 import java.util.Map.Entry;
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 //獲取請求數(shù)據(jù)
 public class RequestDemo extends HttpServlet {
  public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
   //http://localhost:8080/test/servlet/RequestDemo?name=yyz
   String value = request.getParameter("name");
   System.out .println(value);
   //http://localhost:8080/test/servlet/RequestDemo?like=sing&like=dance
   String likes[] = request.getParameterValues("like");
   if(likes!=null){
    for(String like : likes){
     System.out.println(like);
    }
   }
   //下面是這種遍歷的專業(yè)寫法,獲取數(shù)組數(shù)據(jù)的方式(可避免空指針異常)
   for(int i=0;likes!=null&&i<likes.length;i++){
    System.out.println(likes[i]);
   }
   //獲取所有名稱,并根據(jù)名稱獲取值
   Enumeration e = request.getParameterNames();
   while(e.hasMoreElements()){
    String name = (String) e.nextElement();
    value = request.getParameter(name);
    System.out.println(name+"="+value);
   }
   System.out.println("----------------------");
   //得到request對象中用來封裝數(shù)據(jù)的Map集合
   Map<String,String[]> map = request.getParameterMap();
   for(Entry<String, String[]> me : map.entrySet()){
    String name = me.getKey();
    String [] v = me.getValue();
    System.out.println(name+"="+v[0]);
   }
 } 
  public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
   doGet(request,response);
 }
 }


以上就是Java中request對象常用方法的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • MybatisPlus中selectPage的使用方法

    MybatisPlus中selectPage的使用方法

    本文主要介紹了MybatisPlus中selectPage的使用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-05-05
  • Java垃圾回收機制的finalize方法實例分析

    Java垃圾回收機制的finalize方法實例分析

    這篇文章主要介紹了Java垃圾回收機制的finalize方法,結合實例形式分析了finalize方法的特點及在垃圾回收機制中的相關操作技巧,需要的朋友可以參考下
    2019-08-08
  • java實現(xiàn)學籍管理系統(tǒng)

    java實現(xiàn)學籍管理系統(tǒng)

    這篇文章主要為大家詳細介紹了java實現(xiàn)學籍管理系統(tǒng),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • Mybatis中返回主鍵值方式

    Mybatis中返回主鍵值方式

    這篇文章主要介紹了Mybatis中返回主鍵值方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • java swing標準對話框具體實現(xiàn)

    java swing標準對話框具體實現(xiàn)

    這篇文章介紹了swing標準對話框的具體實現(xiàn)方法,有需要的朋友可以參考一下
    2013-06-06
  • Python學習之書寫格式及變量命名

    Python學習之書寫格式及變量命名

    這篇文章我們給大家總結了關于Python書寫格式及變量命名,小編覺得這篇文章寫的還不錯,有興趣的朋友跟著參考學習下,希望能夠給你帶來幫助
    2021-10-10
  • Mybatis中mapper.xml實現(xiàn)熱加載介紹

    Mybatis中mapper.xml實現(xiàn)熱加載介紹

    大家好,本篇文章主要講的是Mybatis中mapper.xml實現(xiàn)熱加載介紹,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01
  • Java?8?Stream?處理數(shù)據(jù)方法匯總

    Java?8?Stream?處理數(shù)據(jù)方法匯總

    這篇文章主要介紹了Java?8?Stream處理數(shù)據(jù),Stream是Java?8?新引入的一個包它讓我們能用聲明式的方式處理數(shù)據(jù),Stream流式處理相較于傳統(tǒng)方法簡潔高效,也便于進行并發(fā)編程,更多相關內容需要的小伙伴可以參考下面文章內容
    2022-06-06
  • Java類加載機制實現(xiàn)流程及原理詳解

    Java類加載機制實現(xiàn)流程及原理詳解

    這篇文章主要介紹了Java類加載機制實現(xiàn)流程及原理詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-06-06
  • 解決SpringBoot在后臺接收前臺傳遞對象方式的問題

    解決SpringBoot在后臺接收前臺傳遞對象方式的問題

    這篇文章主要介紹了解決SpringBoot在后臺接收前臺傳遞對象方式的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01

最新評論

天峻县| 涿州市| 曲松县| 霍州市| 海阳市| 高雄县| 邻水| 岳普湖县| 建湖县| 海口市| 临桂县| 九龙县| 巴楚县| 右玉县| 垣曲县| 浦东新区| 乐平市| 饶平县| 乐陵市| 论坛| 梨树县| 抚顺市| 大悟县| 铅山县| 清徐县| 江达县| 鄂温| 钦州市| 澄城县| 新巴尔虎右旗| 本溪市| 巍山| 景泰县| 阳原县| 石门县| 乃东县| 周宁县| 称多县| 临澧县| 楚雄市| 海城市|