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

Java commons-httpclient如果實現(xiàn)get及post請求

 更新時間:2020年09月17日 10:52:31   作者:賈樹丙  
這篇文章主要介紹了Java commons-httpclient如果實現(xiàn)get及post請求,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

PS:這個jar包,在2007年之后就沒有更新過了, 是比較老的版本了。追求新的版本 用HttpComponents 比較好

引入的jar包為:

<!-- https://mvnrepository.com/artifact/commons-httpclient/commons-httpclient -->
<dependency>
  <groupId>commons-httpclient</groupId>
  <artifactId>commons-httpclient</artifactId>
  <version>3.1</version>
</dependency>

具體實現(xiàn)類為:

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.methods.PostMethod;
import org.apache.commons.httpclient.methods.RequestEntity;
import org.apache.commons.httpclient.methods.StringRequestEntity;
import org.apache.commons.httpclient.params.HttpMethodParams;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.IOException;

public class HttpClientHelper {
  private static Logger logger = LoggerFactory.getLogger(HttpClientHelper.class);

  private HttpClientHelper() {

  }

  /**
   * 發(fā)起POST請求
   *
   * @param url    url
   * @param paramJson 參數(shù)的json格式
   */
  public static String sendPost(String url, String paramJson) {
    logger.info("開始發(fā)起POST請求,請求地址為{},參數(shù)為{}", url, paramJson);

    // 創(chuàng)建httpClient實例對象
    HttpClient httpClient = new HttpClient();
    // 設(shè)置httpClient連接主機服務(wù)器超時時間:15000毫秒
    httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(15000);
    // 創(chuàng)建post請求方法實例對象
    PostMethod postMethod = new PostMethod(url);
    // 設(shè)置post請求超時時間
    postMethod.getParams().setParameter(HttpMethodParams.SO_TIMEOUT, 60000);
    postMethod.addRequestHeader("Content-Type", "application/json");
    try {
      //json格式的參數(shù)解析
      RequestEntity entity = new StringRequestEntity(paramJson, "application/json", "UTF-8");
      postMethod.setRequestEntity(entity);

      httpClient.executeMethod(postMethod);
      String result = postMethod.getResponseBodyAsString();
      postMethod.releaseConnection();
      return result;
    } catch (IOException e) {
      logger.error("POST請求發(fā)出失敗,請求的地址為{},參數(shù)為{},錯誤信息為{}", url, paramJson, e.getMessage(), e);
    }
    return null;
  }

  /**
   * 發(fā)起GET請求
   *
   * @param urlParam url請求,包含參數(shù)
   */
  public static String sendGet(String urlParam) {
    logger.info("開始發(fā)起GET請求,請求地址為{}", urlParam);
    // 創(chuàng)建httpClient實例對象
    HttpClient httpClient = new HttpClient();
    // 設(shè)置httpClient連接主機服務(wù)器超時時間:15000毫秒
    httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(15000);
    // 創(chuàng)建GET請求方法實例對象
    GetMethod getMethod = new GetMethod(urlParam);
    // 設(shè)置post請求超時時間
    getMethod.getParams().setParameter(HttpMethodParams.SO_TIMEOUT, 60000);
    getMethod.addRequestHeader("Content-Type", "application/json");
    try {
      httpClient.executeMethod(getMethod);
      String result = getMethod.getResponseBodyAsString();
      getMethod.releaseConnection();
      logger.info("返回信息為{}", result);
      return result;
    } catch (IOException e) {
      logger.error("GET請求發(fā)出失敗,請求的地址為{},錯誤信息為{}", urlParam, e.getMessage(), e);
    }
    return null;
  }

  public static void main(String[] args) {
    String url = "https://jiashubing.cn/tencenttest";
    String param = "{\"aaa\":\"bbbbbbb\"}";
    sendPost(url, param);
    String urlParam = "https://jiashubing.cn/talk/document?fileid=1234";
    sendGet(urlParam);
  }

}

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

相關(guān)文章

  • 淺談Java double 相乘的結(jié)果偏差小問題

    淺談Java double 相乘的結(jié)果偏差小問題

    下面小編就為大家?guī)硪黄獪\談Java double 相乘的結(jié)果偏差小問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • JDK12的新特性之CompactNumberFormat詳解

    JDK12的新特性之CompactNumberFormat詳解

    這篇文章主要介紹了JDK12的新特性之CompactNumberFormat,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • Java 實現(xiàn)簡易教務(wù)管理系統(tǒng)的代碼

    Java 實現(xiàn)簡易教務(wù)管理系統(tǒng)的代碼

    這篇文章主要介紹了Java 實現(xiàn)簡易教務(wù)管理系統(tǒng)的代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • Java中實現(xiàn)日志記錄的方案總結(jié)

    Java中實現(xiàn)日志記錄的方案總結(jié)

    在平時使用到一些軟件中,比如某寶或者某書,通過記錄用戶的行為來構(gòu)建和分析用戶的行為數(shù)據(jù),這就需要使用到日志系統(tǒng)來存儲或者記錄數(shù)據(jù),小編為大家整理了幾種Java日志方案,希望對大家有所幫助
    2024-12-12
  • 詳解Spring MVC3返回JSON數(shù)據(jù)中文亂碼問題解決

    詳解Spring MVC3返回JSON數(shù)據(jù)中文亂碼問題解決

    本篇文章主要介紹了Spring MVC3返回JSON數(shù)據(jù)中文亂碼問題解決,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • spring緩存代碼詳解

    spring緩存代碼詳解

    這篇文章主要介紹了spring緩存代碼詳解,分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-02-02
  • HttpUtils 發(fā)送http請求工具類(實例講解)

    HttpUtils 發(fā)送http請求工具類(實例講解)

    下面小編就為大家?guī)硪黄狧ttpUtils 發(fā)送http請求工具類(實例講解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • Java實現(xiàn)產(chǎn)生隨機字符串主鍵的UUID工具類

    Java實現(xiàn)產(chǎn)生隨機字符串主鍵的UUID工具類

    這篇文章主要介紹了Java實現(xiàn)產(chǎn)生隨機字符串主鍵的UUID工具類,涉及java隨機數(shù)與字符串遍歷、轉(zhuǎn)換等相關(guān)操作技巧,需要的朋友可以參考下
    2017-10-10
  • 關(guān)于spring依賴注入的方式以及優(yōu)缺點

    關(guān)于spring依賴注入的方式以及優(yōu)缺點

    這篇文章主要介紹了關(guān)于spring依賴注入的方式以及優(yōu)缺點,依賴注入,是IOC的一個方面,是個通常的概念,它有多種解釋,這概念是說你不用創(chuàng)建對象,而只需要描述它如何被創(chuàng)建,需要的朋友可以參考下
    2023-07-07
  • Java中的泛型

    Java中的泛型

    這篇文章主要介紹為何要泛型,如何使用泛型,自定義泛型的方法,泛型類的子類等多方面介紹了JAVA中的泛型,需要的小伙伴請看下文
    2021-08-08

最新評論

蒲城县| 红安县| 任丘市| 洞头县| 汕头市| 广汉市| 九寨沟县| 龙岩市| 海林市| 含山县| 马山县| 蚌埠市| 昌吉市| 余姚市| 黔西| 广州市| 凤山市| 海口市| 林甸县| 甘肃省| 德州市| 兰州市| 昌平区| 吉安市| 图片| 淮南市| 雷山县| 湾仔区| 赣榆县| 峨山| 高平市| 彰化市| 洞头县| 浦东新区| 茂名市| 云安县| 天等县| 固镇县| 呼伦贝尔市| 石林| 武威市|