关于HTTPCLENT超时设置和retry设置

一、旧版本HTTPCLINET 超时设置
 org.apache.commons.httpclient.HttpClient client = new org.apache.commons.httpclient.HttpClient();
 client.setConnectionTimeout(SysGlobals.TIMEOUT);
 或者
 client.setTimeOut(SysGlobals.TIMEOUT);

其中SysGlobals.TIMEOUT 为int类型。

以上2个方法在新版本中已经@Deprecated。

二、新版本中超时设置
  1、设置get方法请求超时为 5 秒
  GetMethod getMethod=new GetMethod(url);    
  getMethod.getParams().setParameter(HttpMethodParams.SO_TIMEOUT,5000);


  2、设置 Http 连接超时为5秒
  HttpClient httpClient=new HttpClient();
  httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(5000);


三、设置retry
  org.apache.commons.httpclient.DefaultMethodRetryHandler retryhandler = new org.apache.commons.httpclient.DefaultMethodRetryHandler();
  retryhandler.setRequestSentRetryEnabled(false);
  retryhandler.setRetryCount(3);
  method.setMethodRetryHandler(retryhandler);
  client.executeMethod(method);


你可能感兴趣的:(java,apache)