java使用RestTemplate
时间: 2025-05-17 11:17:33 浏览: 13
### Java 中使用 RestTemplate 进行 HTTP 请求
#### 创建 RestTemplate 实例
为了执行 HTTP 请求,首先需要创建 `RestTemplate` 的实例。这可以通过简单的新建操作完成[^1]。
```java
RestTemplate restTemplate = new RestTemplate();
```
#### 发起 GET 请求
通过 `getForObject()` 或 `getForEntity()` 方法发起 GET 请求。前者返回的是目标类型的对象,后者则会返回完整的响应实体,包括状态码和头部信息[^2]。
```java
// 获取字符串类型的数据
String result = restTemplate.getForObject("http://example.com/api/resource", String.class);
// 获取自定义对象类型的数据
MyObject myObject = restTemplate.getForObject("http://example.com/api/object", MyObject.class);
```
#### 发起 POST 请求
对于 POST 请求,可以使用 `postForObject()` 或 `postForEntity()` 方法来发送数据并接收响应。
```java
// 定义要发送的对象
Book book = new Book();
book.setName("三国演义");
// 执行 POST 请求并将结果映射为目标类型
ResponseEntity<String> response = restTemplate.postForEntity(
"http://HELLO-SERVICE/addbook",
book,
String.class
);
```
#### 发起 PUT 请求
PUT 请求通常用于更新资源,其方法签名类似于 POST 请求,但不返回任何内容[^3]。
```java
// 更新指定 ID 的书籍名称
restTemplate.put("http://HELLO-SERVICE/updatebook/{id}", book, 99);
```
#### 发起 DELETE 请求
DELETE 请求用于删除特定资源,可通过传递 URL 和路径变量实现。
```java
// 删除指定 ID 的书籍
restTemplate.delete("http://HELLO-SERVICE/deletebook/{id}", 99);
```
#### 配置依赖项
在项目中使用 RestTemplate 前,需确保已引入 Spring Web 模块的相关依赖[^4]。
```xml
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.0.4.RELEASE</version>
</dependency>
```
---
#### 总结
上述示例展示了如何利用 RestTemplate 类型安全的方式发起常见的 HTTP 请求 (GET/POST/PUT/DELETE),并通过配置合适的依赖支持这些功能。
阅读全文
相关推荐


















