如何为springboot 2.0.2启用Httpclient

时间:2019-06-27 13:04:46

标签: java spring-boot httpclient spring-boot-maven-plugin

我正在为我的项目使用springboot的2.0.2版本。 我需要为我的项目使用HttpClient类。 您能帮我一下如何启用此版本的httpClient吗?

预先感谢

1 个答案:

答案 0 :(得分:0)

可以帮助您的提示。

首先在这样的Spring Config类中注册HttpClient bean:

import org.apache.http.client.HttpClient;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.impl.client.HttpClientBuilder;


@Configuration
public class SpringConfiguration {

  @Bean
  public HttpClient httpClient() {
    RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(30 * 1000).build();
    return HttpClientBuilder.create().setDefaultRequestConfig(requestConfig).build();
  }

}

然后您可以通过两种方式进行访问:

“自动接线”组件中的字段

@Autowired
private HttpClient httpClient;

或将其注入组件的构造函数中,如下所示:

@Service
public class MyClass{
  private final HttpClient httpClient;

  @Autowired
  public MyClass(HttpClient httpClient){
    this.httpClient = httpClient;
  }
}

我个人更喜欢第二种方法,它使它在测试时更容易理解和更简单,您只需为要测试的类的实例提供一个模拟即可。