我正在使用当前的Spring引导版本(1.4.x),想知道它是否对api调用有任何默认超时。我已经通过设置断点对其进行了测试,但是它一直处于等待状态,并且没有超时。我还尝试通过使用一些注释或yml设置为所有spring- boot应用程序配置默认超时。
我发现了几种替代方法,但实际上使用callable会添加额外的非业务逻辑代码,其中在xml bean中设置某些内容在最新的Spring Boot应用程序中已经过时了。
我同意上述所有选项,并在我的Spring Boot应用程序中尝试了以下选项。现在工作正常。下面是作为Bean的代码示例。现在只需要到我需要的@Autowire RestTemplate任何地方java class。
@Autowire
RestTemplate
java class
@Bean public RestTemplate restTemplate() { RestTemplate restTemplate = new RestTemplate(); ((SimpleClientHttpRequestFactory) restTemplate.getRequestFactory()).setConnectTimeout(15000); ((SimpleClientHttpRequestFactory) restTemplate.getRequestFactory()).setReadTimeout(15000); return restTemplate; }