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

java中request常用方法小結(jié)

 更新時(shí)間:2014年10月26日 10:22:20   投稿:hebedich  
這篇文章主要介紹了java中request常用方法小結(jié),需要的朋友可以參考下

      HttpServletRequest對(duì)象代表客戶端的請(qǐng)求,當(dāng)客戶端通過(guò)HTTP協(xié)議訪問(wèn)服務(wù)器時(shí),HTTP請(qǐng)求頭中的所有信息都封裝在這個(gè)對(duì)象中,開發(fā)人員通過(guò)這個(gè)對(duì)象的方法,可以獲得客戶這些信息。

request常用方法

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

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

  2.getRequestURI方法返回請(qǐng)求行中的資源名部分。

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

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

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

  6.getRemotePort方法返回客戶機(jī)所使用的網(wǎng)絡(luò)端口號(hào)。

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

  8.getLocalName方法返回WEB服務(wù)器的主機(jī)名。

  9.getMethod得到客戶機(jī)請(qǐng)求方式。

復(fù)制代碼 代碼如下:

 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用來(lái)標(biāo)識(shí)一個(gè)資源。
          * URL用來(lái)標(biāo)識(shí)互聯(lián)網(wǎng)上的一個(gè)資源。
          */
         System.out.println(request.getRequestURL());//得到請(qǐng)求URL地址
         System.out.println(request.getRequestURI());//得到請(qǐng)求的資源
         System.out.println(request.getQueryString());
         System.out.println(request.getRemoteAddr());//得到來(lái)訪者IP
         System.out.println(request.getRemoteHost());
         //由于沒有在dns上注冊(cè)所以打印結(jié)果還是127.0.0.1,如果是百度訪問(wèn)這個(gè)程序,則打印www.baidu.com
         System.out.println(request.getRemotePort());//得到請(qǐng)求的資源
         System.out.println(request.getMethod());//得到請(qǐng)求的資源
 }
 
     public void doPost(HttpServletRequest request, HttpServletResponse response)
             throws ServletException, IOException {
         doGet(request,response);
 }
 
 }

在瀏覽器地址欄輸入:http://localhost:8080/test/servlet/RequestDemo后后臺(tái)輸出入下圖:


二、獲得客戶機(jī)請(qǐng)求頭

 1.getHeader(String name)方法

 2.getHeaders(String name)方法

 3.getHeaderNames()方法

復(fù)制代碼 代碼如下:

 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;
 //獲取請(qǐng)求頭
 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);
 }
 
 }

在瀏覽器訪問(wèn)該程序,后臺(tái)輸出如下:

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

 1.getParameter(name)方法

 2.getParameterValues(String name)方法

 3.getParameterNames方法

 4.getParameterMap方法,做框架時(shí)大量使用

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;
 //獲取請(qǐng)求數(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對(duì)象中用來(lái)封裝數(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);
 }
 }

相關(guān)文章

最新評(píng)論

峨眉山市| 乌兰县| 石门县| 四子王旗| 如东县| 昔阳县| 四会市| 阿荣旗| 宜黄县| 仁化县| 泸西县| 石河子市| 龙南县| 文登市| 石首市| 齐河县| 汝城县| 长沙县| 会同县| 江陵县| 连城县| 华容县| 岳西县| 济阳县| 安乡县| 滨海县| 清徐县| 资中县| 漠河县| 筠连县| 临沧市| 巴林左旗| 恩平市| 古交市| 嘉禾县| 台中市| 黄龙县| 怀远县| 澄城县| 开鲁县| 景洪市|