RestTemplate配置长连接,全部代码
时间: 2023-08-16 10:09:42 浏览: 121
using-either-resttemplate:的源代码
以下是完整的代码示例,演示如何使用RestTemplate配置长连接:
```java
import org.apache.http.client.HttpClient;
import org.apache.http.impl.client.HttpClientBuilder;
import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
import org.springframework.web.client.RestTemplate;
public class RestTemplateExample {
public static void main(String[] args) {
// 创建HttpClient实例
HttpClient httpClient = HttpClientBuilder.create()
.setMaxConnTotal(100) // 设置最大连接数
.setMaxConnPerRoute(20) // 设置每个路由的最大连接数
.build();
// 创建HttpComponentsClientHttpRequestFactory实例,并设置HttpClient
HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(httpClient);
// 创建RestTemplate实例,并设置请求工厂
RestTemplate restTemplate = new RestTemplate(requestFactory);
// 发送HTTP请求
String url = "http://example.com/api";
String response = restTemplate.getForObject(url, String.class);
System.out.println(response);
}
}
```
在上面的示例中,我们创建了一个`HttpClient`实例,并设置了最大连接数和每个路由的最大连接数。然后,我们使用`HttpComponentsClientHttpRequestFactory`将`HttpClient`配置到`RestTemplate`中。最后,我们使用`RestTemplate`发送HTTP请求并获取响应。
请注意,这只是一个简单的示例,你可以根据实际需求进行更多的配置和调整。另外,记得根据你的项目需要添加相应的依赖,如Apache HttpClient和Spring Web。
阅读全文