亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

java發(fā)送http get請求的兩種方式

 更新時間:2017年05月26日 08:46:38   作者:小明快點跑  
這篇文章主要為大家詳細介紹了java發(fā)送http get請求的兩種方式,具有一定的參考價值,感興趣的小伙伴們可以參考一下

長話短說,廢話不說

一、第一種方式,通過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ù),目前還沒有研究出個所以然。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Windows下后端如何啟動SpringBoot的Jar項目

    Windows下后端如何啟動SpringBoot的Jar項目

    這篇文章主要介紹了Windows下后端如何啟動SpringBoot的Jar項目問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • 多數(shù)據(jù)源如何實現(xiàn)事務管理

    多數(shù)據(jù)源如何實現(xiàn)事務管理

    Spring中涉及三個核心事務處理接口:PlatformTransactionManager、TransactionDefinition和TransactionStatus,PlatformTransactionManager提供事務操作的基本方法,如獲取事務、提交和回滾
    2024-09-09
  • mybatisplus中返回Vo的案例講解

    mybatisplus中返回Vo的案例講解

    這篇文章主要介紹了mybatisplus中返回Vo的案例,mybatisplus內(nèi)置的幾個方法使用泛型限制了方法的返回類型,所以實現(xiàn)返回Vo還是得自定義方法,?這個方法名盡量不要和原有的名字類似,本文通過實例代碼給大家詳解講解,需要的朋友可以參考下
    2023-03-03
  • MyBatis-Plus中如何實現(xiàn)動態(tài)表名

    MyBatis-Plus中如何實現(xiàn)動態(tài)表名

    這篇文章主要介紹了MyBatis-Plus中如何實現(xiàn)動態(tài)表名問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • 詳解java數(shù)組進行翻轉(zhuǎn)的方法有哪些

    詳解java數(shù)組進行翻轉(zhuǎn)的方法有哪些

    這篇文章主要介紹了詳解java數(shù)組進行翻轉(zhuǎn)的方法有哪些,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • SpringSecurity授權實現(xiàn)基本思路

    SpringSecurity授權實現(xiàn)基本思路

    本文介紹了SpringSecurity中使用FilterSecurityInterceptor進行權限校驗的基本方法,通過SecurityContextHolder獲取Authentication中的權限信息,感興趣的朋友跟隨小編一起看看吧
    2024-10-10
  • idea2019.1.4 鼠標放到方法上顯示注解的實現(xiàn)操作

    idea2019.1.4 鼠標放到方法上顯示注解的實現(xiàn)操作

    這篇文章主要介紹了idea2019.1.4 鼠標放到方法上顯示注解的實現(xiàn)操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Spring配置文件使用占位符配置方式

    Spring配置文件使用占位符配置方式

    這篇文章主要介紹了Spring配置文件使用占位符配置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • Spring Boot中的那些條件判斷的實現(xiàn)方法

    Spring Boot中的那些條件判斷的實現(xiàn)方法

    這篇文章主要介紹了Spring Boot中的那些條件判斷的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • Springboot整合Mybatis傳值的常用方式總結

    Springboot整合Mybatis傳值的常用方式總結

    今天給大家?guī)淼氖顷P于Springboot的相關知識,文章圍繞著Springboot整合Mybatis傳值的常用方式展開,文中有非常詳細的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06

最新評論