resttemplate put请求带参数
时间: 2023-10-21 09:57:41 浏览: 105
解决 Spring RestTemplate post传递参数时报错问题
可以通过将参数对象作为`RestTemplate`的第二个参数来发送PUT请求。示例代码如下:
```java
RestTemplate restTemplate = new RestTemplate();
String url = "http://example.com/path";
User user = new User("123", "John"); // 假设User是一个包含id和name属性的JavaBean
restTemplate.put(url, user);
```
在这个示例中,我们将一个包含id和name属性的JavaBean对象作为第二个参数传递给了`RestTemplate`的`put`方法。`RestTemplate`会自动将这个对象转换成JSON格式,并将其放入请求的请求体中。
如果需要传递查询参数,可以使用`UriComponentsBuilder`构建带有查询参数的URL。示例代码如下:
```java
RestTemplate restTemplate = new RestTemplate();
UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl("http://example.com/path")
.queryParam("id", "123")
.queryParam("name", "John");
String url = builder.toUriString();
User user = new User("123", "John"); // 假设User是一个包含id和name属性的JavaBean
restTemplate.put(url, user);
```
在这个示例中,我们使用`UriComponentsBuilder`构建了一个带有查询参数的URL,并将其作为第一个参数传递给了`put`方法。同时,我们将一个包含id和name属性的JavaBean对象作为第二个参数传递给了`put`方法。`RestTemplate`会自动将这个对象转换成JSON格式,并将其放入请求的请求体中。
阅读全文