欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java發(fā)送http get請求的兩種方法(總結)

 更新時間:2017年05月26日 09:04:31   投稿:jingxian  
下面小編就為大家?guī)硪黄猨ava發(fā)送http get請求的兩種方法(總結)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

長話短說,廢話不說

一、第一種方式,通過HttpClient方式,代碼如下:

public static String httpGet(String url, String charset)
   throws HttpException, IOException {
  String json = null;
  HttpGet httpGet = new HttpGet();
  // 設置參數(shù)
  try {
   httpGet.setURI(new URI(url));
  } catch (URISyntaxException e) {
   throw new HttpException("請求url格式錯誤。"+e.getMessage());
  }
  // 發(fā)送請求
  HttpResponse httpResponse = client.execute(httpGet);
  // 獲取返回的數(shù)據(jù)
  HttpEntity entity = httpResponse.getEntity();
  byte[] body = EntityUtils.toByteArray(entity);
  StatusLine sL = httpResponse.getStatusLine();
  int statusCode = sL.getStatusCode();
  if (statusCode == 200) {
   json = new String(body, charset);
   entity.consumeContent();
  } else {
   throw new HttpException("statusCode="+statusCode);
  }
  return json;
}

二、第二種方式,通過流的形式,貼代碼:

/**
  * 發(fā)送http get請求
  * 
  * @param getUrl
  * @return
  */
  public String sendGetRequest(String getUrl)
  {
   StringBuffer sb = new StringBuffer();
   InputStreamReader isr = null;
   BufferedReader br = null;
   try
   {
     URL url = new URL(getUrl);
     URLConnection urlConnection = url.openConnection();
     urlConnection.setAllowUserInteraction(false);
     isr = new InputStreamReader(url.openStream());
     br = new BufferedReader(isr);
     String line;
     while ((line = br.readLine()) != null)
     {
      sb.append(line);
     }
   }
   catch (IOException e)
   {
     e.printStackTrace();
   }
   finally
   {
     fileOperator.closeResources(isr, br);
   }
   return sb.toString();
  }
}

這兩種實現(xiàn)方式不同,怎么使用看個人喜好吧,不過我在項目開發(fā)過程中,使用流的方式部署在預發(fā)機(linux機器)上會出現(xiàn)返回null的情況,但是本地windows卻正常訪問,而且,換另外一臺預發(fā)機也能正常獲取數(shù)據(jù),目前還沒有研究出個所以然。。。

以上這篇java發(fā)送http get請求的兩種方法(總結)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • 如何解決springboot數(shù)據(jù)庫查詢時出現(xiàn)的時區(qū)差異問題

    如何解決springboot數(shù)據(jù)庫查詢時出現(xiàn)的時區(qū)差異問題

    這篇文章主要介紹了如何解決springboot數(shù)據(jù)庫查詢時出現(xiàn)的時區(qū)差異問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • Java spring單點登錄系統(tǒng)

    Java spring單點登錄系統(tǒng)

    這篇文章主要介紹了Java spring單點登錄系統(tǒng),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • 詳解Java如何利用位操作符創(chuàng)建位掩碼

    詳解Java如何利用位操作符創(chuàng)建位掩碼

    在本文中,我們來看看如何使用位操作符實現(xiàn)低級別的位掩碼。我們將看到我們如何將一個單一的int變量作為一個單獨的數(shù)據(jù)容器,感興趣的可以跟隨小編一起學習一下
    2022-10-10
  • Spring中自動注入的兩種方式總結

    Spring中自動注入的兩種方式總結

    Spring的核心技術IOC(Intorol of Converse控制反轉)的實現(xiàn)途徑是DI(dependency Insert依賴注入)。而依賴注入(DI)的實現(xiàn)方式又有兩種,xml方式和注解方式。本文就來詳細聊聊這兩個方式,需要的可以了解一下
    2022-10-10
  • springboot使用maven實現(xiàn)多環(huán)境運行和打包問題

    springboot使用maven實現(xiàn)多環(huán)境運行和打包問題

    這篇文章主要介紹了springboot使用maven實現(xiàn)多環(huán)境運行和打包問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • 利用java判斷字符串中有漢字?(常用正則表達式)

    利用java判斷字符串中有漢字?(常用正則表達式)

    最近工作中遇到了一個需求,需要利用java獲取字符串中的數(shù)字,嘗試幾種方法后發(fā)現(xiàn)利用正則表達式實現(xiàn)最為方便,這篇文章主要給大家介紹了關于如何利用java判斷字符串中有漢字?的相關資料,文中還分享了一些常用正則表達式,需要的朋友可以參考下
    2023-10-10
  • Spring boot集成Kafka消息中間件代碼實例

    Spring boot集成Kafka消息中間件代碼實例

    這篇文章主要介紹了Spring boot集成Kafka消息中間件代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-05-05
  • Java?ConcurrentHashMap實現(xiàn)線程安全的代碼示例

    Java?ConcurrentHashMap實現(xiàn)線程安全的代碼示例

    眾所周知ConcurrentHashMap是HashMap的多線程版本,HashMap?在并發(fā)操作時會有各種問題,而這些問題,只要使用ConcurrentHashMap就可以完美解決了,本文將給詳細介紹ConcurrentHashMap是如何保證線程安全的
    2023-05-05
  • Java非遞歸實現(xiàn)刪除任意目錄的方法

    Java非遞歸實現(xiàn)刪除任意目錄的方法

    這篇文章主要為大家詳細介紹了Java非遞歸實現(xiàn)刪除任意目錄的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • java多線程之火車售票系統(tǒng)模擬實例

    java多線程之火車售票系統(tǒng)模擬實例

    下面小編就為大家?guī)硪黄猨ava多線程之火車售票系統(tǒng)模擬實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06

最新評論