RestTemplate的使用
时间: 2023-10-19 12:25:46 浏览: 38
RestTemplate 是 Spring 框架提供的一个用于发送 HTTP 请求并处理响应的类。它提供了多种便捷的方法来发送不同类型的请求(例如 GET、POST、PUT、DELETE 等),并支持异步请求和文件上传等功能。
以下是 RestTemplate 的基本使用方法:
1. 创建 RestTemplate 实例:
```java
RestTemplate restTemplate = new RestTemplate();
```
2. 发送 GET 请求:
```java
String url = "http://example.com/api/resource";
ResponseEntity<String> response = restTemplate.getForEntity(url, String.class);
String responseBody = response.getBody();
```
3. 发送 POST 请求:
```java
String url = "http://example.com/api/resource";
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
Map<String, Object> requestBody = new HashMap<>();
requestBody.put("param1", "value1");
requestBody.put("param2", "value2");
HttpEntity<Map<String, Object>> requestEntity = new HttpEntity<>(requestBody, headers);
ResponseEntity<String> response = restTemplate.postForEntity(url, requestEntity, String.class);
String responseBody = response.getBody();
```
4. 发送 PUT 请求:
```java
String url = "http://example.com/api/resource";
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
Map<String, Object> requestBody = new HashMap<>();
requestBody.put("param1", "value1");
requestBody.put("param2", "value2");
HttpEntity<Map<String, Object>> requestEntity = new HttpEntity<>(requestBody, headers);
restTemplate.put(url, requestEntity);
```
5. 发送 DELETE 请求:
```java
String url = "http://example.com/api/resource/{id}";
restTemplate.delete(url, id);
```
以上是 RestTemplate 的基本使用方法,你可以根据具体需求来选择合适的方法和参数。另外,还可以通过配置 RestTemplate 的拦截器、设置超时时间等来进行更高级的配置。