我使用了这个答案的解决方案: Get list of JSON objects with Spring RestTemplate 它完美地运作。它完全符合我的需要。
ProcessDefinition[] response = restTemplate.getForObject(url, ProcessDefinition[].class);
是否应该:
return Arrays.asList(response);
或者这样会更好:
return Arrays.asList(Optional.ofNullable(response).orElse(new ProcessDefinition[0]));
P.S。很抱歉开始新主题,但我的业力不允许我评论答案。
答案 0 :(得分:3)
是的,是
的结果ProcessDefinition[] response = restTemplate.getForObject(url, ProcessDefinition[].class);
如果HTTP响应为空(不是null
,而是完全为空),可以是[]
。
因此,如果您不确定HTTP响应永远不会为空,那么检查它会更安全。
return Optional.ofNullable(response).map(Arrays::asList).orElseGet(ArrayList::new)
或
return Optional.ofNullable(response).map(Stream::of).orElseGet(Stream::empty)
如果你需要一个流。