3.1 httpclient5介绍

发布时间

2020年2月 httpclient从4.5直接升级了到5.0.

主要升级内容

1、支持HTTP/2
2、新的异步HTTP接口
3、重构reactor io模式,改进基于reactor 的NIO,使得性能和拓展性更好。
4、不论服务端是阻塞还是异步的实现,httpclient5均能支持服务端的过滤。例如横切协议(cross-cutting protocol)的握手,和用户认证授权。
5、支持reactive流的API
6、使用严格连接有限保证的方式重构连接池的实现。通过减少全局连接池的锁,连接池在高并发下获得更好的性能。
7、新的不严格连接有限保证连接池的实现。通过去除全局的连接池锁获得更高的性能。
8、更改包名
9、更改maven的groupId

包初探

从支持HHTP/2到新的连接池实现。从版本号的跳跃和包名和groupId的变更都显示着这次的变动非常之大。
那我们从包的角度来看看这次的变动。

maven依赖

发现groupId多了一个client5,artifactId也多了一个5,version从4变成了5

    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>4.5.12</version>
    </dependency>

<dependency>
        <groupId>org.apache.httpcomponents.client5</groupId>
        <artifactId>httpclient5</artifactId>
        <version>5.0.1</version>
    </dependency>
包名的变动
import org.apache.http.impl.client.CloseableHttpClient;//原包名
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;//5.0 包名

后面的章节将围绕httpclient5进行详细的说明。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容