基本上,用户常用的就是HttpClient;它基于Http Core部分,但 Core部分太过于 low level,不建议使用,除非有特殊需要。


Apache HttpComponentsTM 项目,负责创建和维护一套专注于HTTP和相关协议的low level的Java components。

HttpComponents结构

HttpComponents Core

HttpCore 是一组low level HTTP传输组件,可被用于build custom client and server side HTTP services。HttpCore支持两种 I/O 模型:基于Java I/O的blocking模型、基于Java NIO的non-blocking & event driven I/O 模型。

blocking I/O模型,可能更适用于data intensive、low latency 场景;non-blocking模型可能更适用于high latency场景 -- 相对来说,这种场景下raw data throughput(吞吐量)的重要性 不如处理数以千计的并发HTTP连接的能力。

HttpComponents Client

HttpClient 是一个基于HttpCore的遵守HTTP/1.1的 HTTP agent实现。它还提供了可复用的components,可用于客户端认证、HTTP 状态管理,以及HTTP连接管理。HttpComponents Client是 Commons HttpClient 3.x 的继任者和替代者。

HttpComponents AsyncClient

Asynch HttpClient 是基于HttpCore NIO 和 HttpClient components的遵守HTTP/1.1协议的HTTP agent实现。它是Apache HttpClient的补充模块,用于特殊情况:处理大量并发连接的能力远比性能(指raw data吞吐量)更重要时的情况。

Apache HttpComponents 学习的更多相关文章

  1. Apache HttpComponents Client 4.0快速入门/升级-2.POST方法访问网页

    Apache HttpComponents Client 4.0已经发布多时,httpclient项目从commons子项目挪到了HttpComponents子项目下,httpclient3.1和 h ...

  2. org.apache.httpcomponents httpclient 发起HTTP JSON请求

    1. pom.xml <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactI ...

  3. JAVA中使用Apache HttpComponents Client的进行GET/POST请求使用案例

    一.简述需求 平时我们需要在JAVA中进行GET.POST.PUT.DELETE等请求时,使用第三方jar包会比较简单.常用的工具包有: 1.https://github.com/kevinsawic ...

  4. Apache HttpComponents中的cookie匹配策略

    Apache HttpComponents中的cookie匹配策略 */--> pre.src {background-color: #292b2e; color: #b2b2b2;} pre. ...

  5. Apache Flink学习笔记

    Apache Flink学习笔记 简介 大数据的计算引擎分为4代 第一代:Hadoop承载的MapReduce.它将计算分为两个阶段,分别为Map和Reduce.对于上层应用来说,就要想办法去拆分算法 ...

  6. Apache Shiro学习-2-Apache Shiro Web Support

     Apache Shiro Web Support  1. 配置 将 Shiro 整合到 Web 应用中的最简单方式是在 web.xml 的 Servlet ContextListener 和 Fil ...

  7. httpclient工具使用(org.apache.httpcomponents.httpclient)

    httpclient工具使用(org.apache.httpcomponents.httpclient) 引入依赖 <dependency> <groupId>org.apac ...

  8. commons-httpclient和org.apache.httpcomponents的区别

    <dependency> <groupId>commons-httpclient</groupId> <artifactId>commons-httpc ...

  9. Apache HttpComponents 工具类 [ HttpUtil ]

    pom.xml <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId&g ...

随机推荐

  1. JSON入门之二:org.json的基本使用方法

    java中用于解释json的主流工具有org.json.json-lib与gson.本文介绍org.json的应用. 官方文档: http://www.json.org/java/ http://de ...

  2. java 常见判断题

    1 根据下面的代码,String s = null;会抛出NullPointerException异常的有(). ) ) ) ) ) ) ) ) 说明:逻辑运算符:&&和|| 是按照“ ...

  3. 赶集mysql军规

    总是在灾难发生后,才想起容灾的重要性.总是在吃过亏后,才记得曾经有人提醒过. 一,核心军规 不在数据库做计算,cpu计算务必移至业务层 控制单表数据量,单表记录控制在千万级 控制列数量,字段数控制在2 ...

  4. controller与requestmapping

    使用@controller定义controllersSpring mvc将特定url的请求分发到controller类来进行处理在spring 3.0中,通过@controller标注即可将class ...

  5. 【Anroid】9.1 ListView相关类及其适配器

    分类:C#.Android.VS2015: 创建日期:2016-02-18 一.简介 列表视图(ListView)是Android应用程序中使用最频繁的UI组件,从无处不在短菜单选项列表到冗长的联系人 ...

  6. Untrusted 游戏 通关攻略

    这个游戏还不错,用了两个晚上的时间通过并写下解法.这个游戏通过修改JS代码来通关的游戏.很考验玩家的解决问题能力,同时也有一定的可玩性. 游戏地址 http://alexnisnevich.githu ...

  7. C# JAVAMemory model

    http://www.cl.cam.ac.uk/~pes20/weakmemory/index.html http://preshing.com/20120913/acquire-and-releas ...

  8. python 中安装pandas

    由于计算arima模型需要用到pandas,费尽千辛万苦找到了一个下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/,在这里能下载到很多我们要用的模块.找到 ...

  9. rpc简介、原理、实例

    简介 RPC(Remote Procedure Call,远程过程调用)是建立在Socket之上的,出于一种类比的愿望,在一台机器上运行的主程序,可以调用另一台机器上准备好的子程序,就像LPC(本地过 ...

  10. Failed to stop Abandoned connection cleanup thread

    刚才在测试一个用户登录程序的时候,是这么一个情况,在login.jsp登录之后,跳转到success.jsp页面 然后我修改了一个servlet,重新deploy到/WEB-INF/classes下( ...