java實現HttpClient異步請求資源的方法
更新時間:2015年07月17日 10:34:13 作者:答復哈
這篇文章主要介紹了java實現HttpClient異步請求資源的方法,實例分析了java基于http協(xié)議實現異步請求的技巧,具有一定參考借鑒價值,需要的朋友可以參考下
本文實例講述了java實現HttpClient異步請求資源的方法。分享給大家供大家參考。具體實現方法如下:
package demo; import java.util.concurrent.CountDownLatch; import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.nio.client.DefaultHttpAsyncClient; import org.apache.http.nio.client.HttpAsyncClient; import org.apache.http.nio.concurrent.FutureCallback; import org.apache.http.nio.reactor.IOReactorException; public class Main { /** * @param args * @throws IOReactorException * @throws InterruptedException */ public static void main(String[] args) throws IOReactorException, InterruptedException { final HttpAsyncClient httpclient = new DefaultHttpAsyncClient(); httpclient.start(); HttpGet[] requests = new HttpGet[] { new HttpGet("http://www.apache.org/"), new HttpGet("https://www.verisign.com/"), new HttpGet("http://www.google.com/") }; final CountDownLatch latch = new CountDownLatch(requests.length); try { for (final HttpGet request: requests) { httpclient.execute(request, new FutureCallback<HttpResponse>() { public void completed(final HttpResponse response) { latch.countDown(); System.out.println(request.getRequestLine() + "->" + response.getStatusLine()); } public void failed(final Exception ex) { latch.countDown(); ex.printStackTrace(); } public void cancelled() { latch.countDown(); } }); } System.out.println("Doing..."); }finally { latch.await(); httpclient.shutdown(); } System.out.println("Done"); } }
希望本文所述對大家的java程序設計有所幫助。
相關文章
springboot+mybatis攔截器方法實現水平分表操作
這篇文章主要介紹了springboot+mybatis攔截器方法實現水平分表操作,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的朋友可以參考一下2022-08-08Springboot如何實現Web系統(tǒng)License授權認證
這篇文章主要介紹了Springboot如何實現Web系統(tǒng)License授權認證,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-05-05詳解分別用Kotlin和java寫RecyclerView的示例
本篇文章主要介紹了詳解分別用Kotlin和java寫RecyclerView的示例,詳解分別用Kotlin和java寫RecyclerView的示例2017-12-12在MyBatis中實現一對多查詢和多對一查詢的方式詳解(各兩種方式)
今天通過兩種方法分別給大家介紹在MyBatis中實現一對多查詢和多對一查詢的方式,每種方式通過實例代碼給大家介紹的非常詳細,需要的朋友參考下吧2022-01-01