如何使用 RestTemplate
时间: 2024-08-16 11:05:37 浏览: 38
RestTemplate是Spring框架中的一个客户端类,用于执行HTTP请求并处理响应结果。它简化了与RESTful API的交互。以下是使用RestTemplate发送GET、POST等请求的基本步骤:
1. **创建RestTemplate实例**:
```java
import org.springframework.web.client.RestTemplate;
RestTemplate restTemplate = new RestTemplate();
```
2. **发送GET请求**:
```java
String url = "http://api.example.com/data";
ResponseEntity<String> response = restTemplate.getForEntity(url, String.class);
String result = response.getBody(); // 获取响应体
System.out.println(result); // 打印响应内容
```
3. **发送POST请求**:
```java
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
HttpEntity<String> request = new HttpEntity<>("{'key': 'value'}", headers);
ResponseEntity<String> postResponse = restTemplate.postForEntity(url, request, String.class);
System.out.println(postResponse.getBody()); // 打印POST响应内容
```
4. **设置超时时间和重试策略**:
可以通过`setConnectTimeout()`和`setTimeout()`方法设置连接和读取超时时间,以及`setRetryPolicy()`来定义重试机制。
5. **错误处理**:
`ResponseEntity`对象包含状态码和其他元数据,可以通过 `.getStatusCode()`获取HTTP状态码,对于非2XX的状态码可以进行异常处理。
请注意,以上示例未涉及认证、拦截器或其他高级功能。在实际应用中可能需要配置这些特性。
阅读全文