简单记录下RestTemplate使用方法

1.设置get方法

ResponseEntity<JSONObject> responseEntity= restTemplate.getForEntity(url,JSONObject.class);

2.设置post方法

 MultiValueMap map = new LinkedMultiValueMap();
   map.add("name", name);
 ResponseEntity<JSONObject> responseEntity = restTemplate.postForEntity(url, map, JSONObject.class);

3.put方法

  MultiValueMap map = new LinkedMultiValueMap();
    map.add("username", "username");
    map.add("address", "address");
    restTemplate.put(url, map);

4.delete方法

 restTemplate.delete(url, model);

5.配置文件(无配置不可使用)

public class RestConfig {
    //不重要
    @Bean
    public CloseableHttpClient httpClient() throws Exception {
        SSLContext context = new SSLContextBuilder().loadTrustMaterial(null, (x509Certificates, s) -> true).build();
        SSLConnectionSocketFactory factory = new SSLConnectionSocketFactory(context, NoopHostnameVerifier.INSTANCE);
        return HttpClients.custom()
                .setSSLSocketFactory(factory)
                .build();
    }
    //不重要
    @Bean
    public ClientHttpRequestFactory httpRequestFactory() throws Exception {
        HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory();
        factory.setHttpClient(httpClient());
        factory.setConnectionRequestTimeout(3000);
        factory.setReadTimeout(30000);
        factory.setConnectTimeout(30000);
        return factory;
    }
   //必须要
    @Bean
    public RestTemplate restTemplate() throws Exception {
        return new RestTemplate(httpRequestFactory());
    }
}
posted @ 2021-10-26 15:54  sowler  阅读(22)  评论(0编辑  收藏  举报  来源