resttemplate 获取集合数据
时间: 2023-08-24 19:05:49 浏览: 55
使用RestTemplate获取集合数据的方法如下:
1. 创建RestTemplate对象
```java
RestTemplate restTemplate = new RestTemplate();
```
2. 定义请求地址和请求参数
```java
String url = "http://example.com/api/users";
MultiValueMap<String, String> params = new LinkedMultiValueMap<>();
params.add("page", "1");
params.add("size", "10");
```
3. 定义响应类型
```java
ParameterizedTypeReference<List<User>> responseType = new ParameterizedTypeReference<List<User>>() {};
```
4. 发送请求并获取响应
```java
ResponseEntity<List<User>> responseEntity = restTemplate.exchange(url, HttpMethod.GET, null, responseType, params);
List<User> userList = responseEntity.getBody();
```
其中,`ParameterizedTypeReference`用于定义响应类型。由于RestTemplate不支持直接获取泛型集合类型的数据,因此需要使用`ParameterizedTypeReference`来指定集合类型的实际参数类型。
以上代码中,我们使用了`exchange`方法来发送GET请求,并通过`ParameterizedTypeReference`指定了响应类型为`List<User>`,同时传入了请求参数`params`。最后通过`getBody`方法获取了响应体中的集合数据。
需要注意的是,以上代码仅供参考,具体请求地址和参数需要根据实际情况进行调整。