如何在Spring RestTemplate中从对象获取列表 [英] How to get List from Object in Spring RestTemplate
问题描述
如何从对象获取列表?在下面可以找到我的代码:
How to get List from Object? Below you can find my code:
ResponseEntity<Object> responseEntity = restTemplate.getForEntity("localhost:8083/connectors/", Object.class);
Object object = responseEntity.getBody();
实际上,对象变量是Objects(Strings)的列表,我需要获取所有这些Strings.
Actually object variable is a List of Objects(Strings) and I need to get all these Strings.
如果我将其打印出System.out.println(object.toString());
,它看起来像这样:
If I print it out System.out.println(object.toString());
it looks like that:
[objvar, values, test, object, servar, larms, aggregates, sink, records]
我需要获取这些字符串的列表才能动态使用它.你能帮忙吗?
I need to get List of these Strings to dynamic use it. Could you please help?
推荐答案
尝试一下.这应该工作.
Try this out. This should work.
ResponseEntity<String[]> responseEntity = restTemplate.getForEntity("localhost:8083/connectors/", String[].class);
List<String> object = Arrays.asList(responseEntity.getBody());
在简单的情况下,上面的代码有效,但是当您要映射复杂的json结构时,最好使用ParameterizedTypeReference.
For simple cases the code above works, but when you have complex json structures which you want to map, then it is ideal to use ParameterizedTypeReference.
ResponseEntity<List<String>> responseEntity =
restTemplate.exchange("localhost:8083/connectors/",
HttpMethod.GET, null, new ParameterizedTypeReference<List<String>>() {
});
List<String> listOfString = responseEntity.getBody();
这篇关于如何在Spring RestTemplate中从对象获取列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!