超文本传输协议(HTTP)在当今可能是网络上最重要的协议。网络服务、基于网络的应用程序和网络计算的增长,已经使HTTP协议不再局限于用户驱动的浏览器,不断增长的大量应用程序需要HTTP支持。用户可以使用HttpComponents来扩展基本HTTP协议应用来构建HTTP客户端和服务器端,例如浏览器、网络蜘蛛、HTTP代理、 WEB服务传输库或者分布式通讯系统。
HttpComponents 包括以下两个组件
HttpComponents Core
HttpCore是一组底层HTTP传输组件,可以使用少量的代码来构建定制的客户和服务器端HTTP服务。 HttpCore支持两种I/O模型: 基于Java I/O的阻塞模型和基于Java NIO的非阻塞模型。阻塞模型更适合数据敏感、低延迟的情况。非阻塞模型更适合高延迟的情况,此时在一定有效资源的情况下原始数据吞吐量的重要性小于处理成千上万的并发HTTP连接。
HttpComponents Client
HttpClient是基于HttpCore的HTTP/1.1兼容的HTTP代理实现。它也提供可重用的组件,例如客户端认证、HTTP状态管理、HTTP连接管理。 HttpComponents Client继承和使用了Commons HttpClient 3.x,强烈建议使用Commons HttpClient的用户升级到HttpComponents Client。
原来是: 现有的Commons HttpClient, 发展到3.x的时候, apache准备重写(或放弃)他了,
而他的替代品就是HttpComponents,
而HttpComponents其中有一部分便是HttpComponents Client
(因为HttpComponents的另一部分也完全可以拿来做一个精简的server)
这就正如HttpComponents 网页左侧的树上分类的一样.Commons HttpClient是遗产系统了... 当HttpComponent足够稳定时, Commons HttpClient便会被替代.
导航树
Components
* HttpCore
* HttpClient
Legacy
* Commons HttpClient