Это моя конфигурация для отдыха Шаблона,Spring RestTemplate - нужно освободить соединение?
@Bean
@Qualifier("myRestService")
public RestTemplate createRestTemplate(@Value("${connection.timeout}") String maxConn) {
PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager();
connectionManager.setMaxTotal(maxTotalConn);
connectionManager.setDefaultMaxPerRoute(maxPerChannel);
RequestConfig config = RequestConfig.custom().setConnectTimeout(100000).build();
CloseableHttpClient httpClient = HttpClientBuilder.create().setConnectionManager(connectionManager)
.setDefaultRequestConfig(config).build();
ClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(httpClient);
RestTemplate restTemplate = new RestTemplate(factory);
restTemplate.setErrorHandler(new RestResponseErrorHandler());
restTemplate.setMessageConverters(createMessageConverters());
return restTemplate;
}
Am использование PoolingHttpClientConnectionManager для управления соединениями.
Его осуществляется доступ к следующему коду,
ResponseEntity<String> response = restClient.exchange(url, HttpMethod.GET, entity , String.class);
мне нужно освободить соединение после вызова выше или она позаботилась по RestTemplate ли. Если нам нужно позаботиться о выпуске соединения.
Возможно, кто-нибудь объяснит/покажет, как освободить соединение.
Пожалуйста, можете ли вы объяснить более четко, возможно, с образцами кода. – Umar