restTemplate设置超时的方法

阅读 68

2023-06-01

设置超时有及其简便的两种方法,分别如下

一.Java的配置类设置

如下方式,添加此配置类即可。

@Configuration 
public class AppConfig{
@Bean
public RestTemplate customRestTemplate(){
HttpComponentsClientHttpRequestFactory httpRequestFactory = new HttpComponentsClientHttpRequestFactory();
httpRequestFactory.setConnectionRequestTimeout(3000);
httpRequestFactory.setConnectTimeout(3000);
httpRequestFactory.setReadTimeout(3000);

return new RestTemplate(httpRequestFactory);
}

二.配置文件指定

配置中添加如下项

custom.rest.connection.connection-request-timeout=3000
custom.rest.connection.connect-timeout=3000
custom.rest.connection.read-timeout=3000

然后类里加载配置即可

@Configuration
public class AppConfig{
@Bean
@ConfigurationProperties(prefix = "custom.rest.connection")
public HttpComponentsClientHttpRequestFactory customHttpRequestFactory() {
    return new HttpComponentsClientHttpRequestFactory();
}

@Bean
public RestTemplate customRestTemplate(){
    return new RestTemplate(customHttpRequestFactory());
}
}

精彩评论(0)

0 0 举报