`
jiankeafei
  • 浏览: 71093 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

HttpClient的简单使用

阅读更多
因为项目的原因,使用到了HttpClient这个Apache又一个好用的包,这里就简单的介绍下它的使用吧。

使用场景:

            因为项目中有一功能是需要和另一个系统进行数据交换的,一开始就考虑采用HttpUrlConnection连接远程地址,发送流实现数据交换。后来发现了HttpClient,也就赖的再写一些连接的函数了,所以就“拿来主义”了!

安装:

HttpClient的使用需要三个包,分别是commons-httpclient-3.1.jar、commons-logging-1.0.4.jar、commons-codec-1.3.jar,都可以在Apache的官网上下载。

使用:

            我们知道,HTTP协议的连接方法有GET、POST、PUT和HEAD方式,在创建Method实例的时候可以更具具体的方法来创建。HttpClient的使用一般分如下几步:

            1、创建HttpClient实例。

            2、创建具体连接方法的实例。如POST方法创建PostMethod的实例,在实例化时从构造函数中传入待连接的URL地址。

            3、对post的发送内容等信息进行配置

            4、执行HttpClient的execute方法

            5、如果返回的状态码正常,表明连接成功,可以读取response的内容
      //将创建的xml生成String类型等待发送
    String strxml = CreateXML.creteCustomerXml(list);
    //创建post发法的实例
            PostMethod post = new PostMethod(
    "http://127.0.0.1:8088/CustomerReceive");
    // 使用系统提供的默认的恢复策略
           post.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
    new DefaultHttpMethodRetryHandler());
    //设置发送的内容       
   post.setRequestBody(strxml);
   //对发送的内容长度进行设定
   if (strxml.length() < Integer.MAX_VALUE) {
               post.setRequestContentLength(strxml.length());
           }
   else {
               post
                       .setRequestContentLength(EntityEnclosingMethod.CONTENT_LENGTH_CHUNKED);
           }
   // 指定请求内容的类型
           post.setRequestHeader("Content-type", "text/xml; charset=utf-8");
   //创建HttpClient 实例
           HttpClient httpclient = new HttpClient();
   int result;
   try {
   //执行post方法
               result = httpclient.executeMethod(post);
   //如果连接正常,获得返回内容         
   if (result == HttpStatus.SC_OK) {
                   InputStream input = post.getResponseBodyAsStream();
                   SAXReader readers = new SAXReader();
   try {
                       Document document = readers.read(input);
                       System.out.println(document.asXML());
                   } catch (DocumentException e) {
   // TODO Auto-generated catch block
                       e.printStackTrace();
                   }
               }
           } catch (HttpException e) {
   // TODO Auto-generated catch block
               e.printStackTrace();
           } catch (IOException e) {
   // TODO Auto-generated catch block
              e.printStackTrace();
          } finally {
               post.releaseConnection();
          }
       }
3
1
分享到:
评论
3 楼 shaka 2009-01-15  
post.setRequestBody(strxml); 


这代码都废弃了,还用。
2 楼 jiankeafei 2008-10-08  
aqining 写道

一次项目中使用过,蛮好玩的

是啊 关键是比较好用,且稳定!
1 楼 aqining 2008-08-27  
一次项目中使用过,蛮好玩的

相关推荐

    httpclient简单使用

    本教程将基于标题"HTTPClient简单使用"和提供的文件`HttpService`、`HttpClient`来阐述HTTPClient的基本使用方法。 1. **HTTPClient简介** HTTPClient是Apache的 HttpClient库,它为Java开发者提供了全面的HTTP...

    httpClient组件使用说明

    本篇文章将详细讲解HttpClient的使用方法,包括如何搭建环境、所需的jar包、基本应用以及实例演示,旨在帮助初级学员快速掌握HttpClient的基础操作。 一、环境搭建 在使用HttpClient之前,首先需要在项目中引入...

    commons-httpclient,java中使用httpclient中使用的扩展工具

    同时,注意HttpClient库已经不再更新,对于新的Java项目,推荐使用现代化的HTTP客户端库,如Apache HttpClient的后继者Apache HTTP Components HttpClient 4.x系列,或者使用Java标准库的`java.net.http.HttpClient`...

    httpclient简单示例说明

    在IT行业中,HttpClient是一个非常重要的工具,特别是在网络编程和API交互...以上就是关于HttpClient简单示例的说明。通过学习和实践,你可以更好地掌握HttpClient的使用,为你的项目提供稳定可靠的网络通信解决方案。

    httpclient使用教程

    以GET方法为例,演示如何使用HttpClient执行简单的HTTP请求: 1. **创建HttpClient实例**:初始化HttpClient对象。 2. **创建连接方法实例**:此处使用`GetMethod`,在构造函数中指定目标URL。 3. **执行方法**:...

    Httpclient使用jar包三合一,基本使用方法

    简单使用方法: public static void main(String[] args) { // String str1 = &quot;http://dev.d-smart.cn/Login&quot;; // http协议路径 String str1 = &quot;&quot;; HttpClient httpClient = new HttpClient...

    HttpClient介绍和使用文档

    以下是一个使用HttpClient简单读取网页内容的例子: ```java import java.io.IOException; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.methods.GetMethod; public ...

    使用HttpClient下载图片

    HttpClient是个很不错的开源框架(org.appache.http),封装了访问http的请求头,参数,内容体,响应等等,使用起来更方面更强大。 HttpURLConnection是java的标准类,可以实现简单的基于URL请求、响应功能,什么都...

    使用 HttpClient 和 HtmlParser 实现简易网络爬虫

    在使用HttpClient和HtmlParser实现网络爬虫的过程中,首先需要设置开发环境。这里推荐使用Eclipse Europa作为集成开发环境(IDE),并确保安装了JDK 1.6。在Eclipse中创建一个新的JAVA工程,并将HttpClient和...

    HttpClient的简单使用,get、post、上传、下载

    一、HttpClient的简单使用 1. 添加依赖 在Java项目中使用HttpClient,首先需要添加对应的依赖。对于Maven项目,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;org.apache.httpcomponents &lt;artifactId&gt;...

    commons-httpclient-3.0.jar JAVA中使用HttpClient可以用到

    《JAVA中使用HttpClient:commons-httpclient-3.0.jar详解》 在JAVA开发中,进行HTTP请求时,Apache的HttpClient库是一个不可或缺的工具。本文将深入解析`commons-httpclient-3.0.jar`,它是HttpClient的一个重要...

    HttpClient 调用WebService示例

    HttpClient是Apache基金会开发的一个HTTP客户端库,广泛应用于Java开发者中,用于执行HTTP...对于RESTful API,使用HttpClient则更为简单,只需构造合适的URL和请求体,然后按照HTTP方法(如GET、POST)进行操作即可。

    使用HttpClient异步请求数据

    本篇将详细讲解如何使用`HttpClient`进行异步请求数据,并结合Android的`AsyncTask`来处理后台任务,避免阻塞UI线程。 首先,理解`HttpClient`的基本使用方法。`HttpClient`包含几个关键组件,如`HttpClient`实例、...

    httpclient-4.5使用需要的所有jar包

    例如,如果只是进行简单的HTTP请求,可能只需要httpclient-4.5.jar和httpcore-4.4.13.jar;而如果需要处理多部分表单或异步请求,则需要引入httpmime-4.5.13.jar和httpasyncclient-4.1.4.jar等。 使用HTTPClient ...

    C#HTTPclient 实例应用

    `HttpClient`是C#中处理HTTP请求的核心工具,掌握了其用法,无论是进行简单的数据获取还是复杂的网络交互,都能得心应手。在实际项目中,根据需求灵活运用`HttpClient`的各种功能,可以构建出高效且健壮的网络通信...

    httpClient使用指南最新版

    ### HttpClient 使用指南知识点详解 #### 一、概述与基本概念 **1.1 请求执行** - **1.1.1 HTTP请求**: 在客户端发起HTTP请求时,需要构造一个`HttpRequest`对象,它包含了请求方法(如GET、POST)、请求URL等...

    httpClient实例httpClient调用 http/https实例 忽略SSL验证

    要创建一个简单的HttpClient实例,你需要以下步骤: 1. 引入Apache HttpClient库: 在你的项目中,确保已经添加了Apache HttpClient的依赖。例如,如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```...

Global site tag (gtag.js) - Google Analytics