springboot 2.0.2如何开启Httpclient
How to enable Httpclient for springboot 2.0.2
我的项目使用的是 2.0.2 版本的 springboot。
我需要为我的项目使用 HttpClient class。
你能帮我看看如何为这个版本启用 httpClient 吗?
提前致谢,
一个可以帮助你的提示。
首先在 Spring 配置 class 中注册一个 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();
}
}
那么您可以通过两种方式访问:
"Autowirering"组件中的字段
@Autowired
private HttpClient httpClient;
或者像这样在组件的构造函数中注入它:
@Service
public class MyClass{
private final HttpClient httpClient;
@Autowired
public MyClass(HttpClient httpClient){
this.httpClient = httpClient;
}
}
我个人更喜欢第二种方法,它在测试时更容易理解和更容易,您只需为要测试的 class 实例提供一个模拟。
我的项目使用的是 2.0.2 版本的 springboot。 我需要为我的项目使用 HttpClient class。 你能帮我看看如何为这个版本启用 httpClient 吗?
提前致谢,
一个可以帮助你的提示。
首先在 Spring 配置 class 中注册一个 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();
}
}
那么您可以通过两种方式访问:
"Autowirering"组件中的字段
@Autowired
private HttpClient httpClient;
或者像这样在组件的构造函数中注入它:
@Service
public class MyClass{
private final HttpClient httpClient;
@Autowired
public MyClass(HttpClient httpClient){
this.httpClient = httpClient;
}
}
我个人更喜欢第二种方法,它在测试时更容易理解和更容易,您只需为要测试的 class 实例提供一个模拟。