springboot-RestTemplate

罗子僧

关注

阅读 155

2022-02-22

1、RestTemplate配置类
@Configuration
public class RestTemplateConfig {

@Bean
public RestTemplate restTemplate(ClientHttpRequestFactory factory){
    return new RestTemplate(factory);
}

@Bean
public ClientHttpRequestFactory simpleClientHttpRequestFactory(){
    SimpleClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory();
    factory.setReadTimeout(5000);//单位为ms
    factory.setConnectTimeout(5000);//单位为ms
    return factory;
}

}
2、RestTemplate----Get方法调用

HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
 RestTemplate restTemplate = new RestTemplate();
List<LinkedHashMap> object = restTemplate.getForObject("http://ip:port/getValueBean",java.util.ArrayList.class);
 List<ValueBean> list = JSON.parseArray(JSON.toJSONString(object), ValueBean.class);

3、RestTemplate----Post方法调用(传入javaBean)

HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
HttpEntity<EquipBean> request = new HttpEntity<>(bean, headers);
RestTemplate restTemplate = new RestTemplate();
ResponseBean responseBean = restTemplate.postForObject("http://ip:port/insertEquip", request, ResponseBean.class);

4、RestTemplate----Post方法调用(传入多参数)

MultiValueMap<String, String> requestEntity = new LinkedMultiValueMap<>();
requestEntity.add("monitorDataIds", monitorDataIds);
RestTemplate restTemplate = new RestTemplate();
restTemplate.postForObject("http://ip:port/deleteMonitorEquip", requestEntity, ResponseBean.class);

精彩评论(0)

0 0 举报