【背景】
最近和之前,折腾了这个:
然后,对于Java的HttpClient,有了点了解。
现在整理如下:
Java本身没有Http相关的库
Java本身,没有内置对应的Http相关的库函数
(
与此对应的是,关于http处理,其他语言,都有内置的库:
- Python有内置的urllib,urllib2等模块
- C#有System.Net,System.Web相关库
)
Java中用的最多的http的库就是:HttpClient
而关于网络处理,http相关处理,则用的最多的就是:
而HttpClient,是Apache这个组织所发布的。
其对应的,完整的名称其实是:Apache HttpComponents
HttpClient的相关解释
Apache HttpComponents包含了两大部分:
- HttpComponents Core == HttpCore
- 实现了一系列的底层传输的功能
- 这些底层功能,可以用来去建立自己的client和server
- 支持两种I/O模式:
- 阻塞型Blocking:基于典型的Java的I/O模型
- 非阻塞型Non-Blocking:基于Java的NIO,事件驱动型
- 在线文档:
- 示例代码:HttpCore Examples
- HttpComponents Client == HttpClient
- 兼容HTTP 1.1
- 基于HttpCore
- 意味着:导入对应的库HttpClient库时,也要导入相关的HttpCore的库
- 同时提供了其他功能:
- 客户端认证功能
- HTTP状态管理
- HTTP连接管理
- HttpClient是之前常用的那个:Commons HttpClient 3.x的继承者
- 之前的HttpClient 3.x,现已废弃
- 如果还要用之前的HttpClient 3.x,也强烈推荐你换用最新的HttpClient 4.1(或更新版本的)
- 在线文档:
- 示例代码:HttpClient Examples
- HttpClient还有个异步的版本:
到哪里下载HttpClient
推荐使用最新版本的HttpClient。
比如,此刻,2013-09-17,最新版本是4.3
所以,进入:
http://hc.apache.org/httpcomponents-client-ga/index.html
后,可以在页面左边列表中看到那个:
进入后,点击对应的:
可以找到:
可以看到对应的4.3的各种下载:
二进制(库文件)下载:
如何使用HttpClient
下载到:
后,得到:
httpcomponents-client-4.3-bin.zip
解压后,在:
httpcomponents-client-4.3-bin\lib
可以找到各个库文件:
- commons-codec-1.6.jar
- commons-logging-1.1.3.jar
- fluent-hc-4.3.jar
- httpclient-4.3.jar
- httpclient-cache-4.3.jar
- httpcore-4.3.jar
- httpmime-4.3.jar
然后,全部都加到你的Eclipse的Java的项目中,就可以使用了。
具体做法,简介:
Eclipse中,右击项目文件夹->Build Path->Add External Archive->把上面的那些jar包都加进去,即可。
详解:
【已解决】Eclipse的java代码出错:The import org.apache cannot be resolved