| | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * RestTemplateConfig |
| | | * Rest模板配置类 |
| | | * @author WWW |
| | | */ |
| | | @Configuration |
| | | @ConditionalOnClass(value = {RestTemplate.class, HttpClient.class}) |
| | | public class RestTemplateConfig { |
| | | /** |
| | | * 连接池的最大连接数默认为0 |
| | | * 连接池的最大连接数默认为0,不限制 |
| | | */ |
| | | @Value("${remote.maxTotalConnect:0}") |
| | | private int maxTotalConnect; |
| | |
| | | private int maxConnectPerRoute; |
| | | |
| | | /** |
| | | * 连接超时默认5s |
| | | * 连接超时默认5s,-1为不限制 |
| | | */ |
| | | @Value("${remote.connectTimeout:5000}") |
| | | private int connectTimeout; |
| | | |
| | | /** |
| | | * 读取超时默认30s |
| | | * 读取超时默认30s,-1为不限制 |
| | | */ |
| | | @Value("${remote.readTimeout:30000}") |
| | | private int readTimeout; |
| | |
| | | } |
| | | |
| | | HttpClient httpClient = HttpClientBuilder.create().setMaxConnTotal(this.maxTotalConnect).setMaxConnPerRoute(this.maxConnectPerRoute).build(); |
| | | |
| | | HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(httpClient); |
| | | factory.setConnectTimeout(this.connectTimeout); |
| | | factory.setReadTimeout(this.readTimeout); |
| | | |
| | | return factory; |
| | | } |
| | | |