3.1 httpclient5介紹

發(fā)布時(shí)間

2020年2月 httpclient從4.5直接升級(jí)了到5.0.

主要升級(jí)內(nèi)容

1、支持HTTP/2
2、新的異步HTTP接口
3、重構(gòu)reactor io模式,改進(jìn)基于reactor 的NIO,使得性能和拓展性更好。
4、不論服務(wù)端是阻塞還是異步的實(shí)現(xiàn),httpclient5均能支持服務(wù)端的過(guò)濾。例如橫切協(xié)議(cross-cutting protocol)的握手,和用戶(hù)認(rèn)證授權(quán)。
5、支持reactive流的API
6、使用嚴(yán)格連接有限保證的方式重構(gòu)連接池的實(shí)現(xiàn)。通過(guò)減少全局連接池的鎖,連接池在高并發(fā)下獲得更好的性能。
7、新的不嚴(yán)格連接有限保證連接池的實(shí)現(xiàn)。通過(guò)去除全局的連接池鎖獲得更高的性能。
8、更改包名
9、更改maven的groupId

包初探

從支持HHTP/2到新的連接池實(shí)現(xiàn)。從版本號(hào)的跳躍和包名和groupId的變更都顯示著這次的變動(dòng)非常之大。
那我們從包的角度來(lái)看看這次的變動(dòng)。

maven依賴(lài)

發(fā)現(xiàn)groupId多了一個(gè)client5,artifactId也多了一個(gè)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>
包名的變動(dòng)
import org.apache.http.impl.client.CloseableHttpClient;//原包名
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;//5.0 包名

后面的章節(jié)將圍繞httpclient5進(jìn)行詳細(xì)的說(shuō)明。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容