【发布时间】:2016-11-22 03:32:06
【问题描述】:
我有一个控制器类,它公开一个方法并以 Stream(java 8) 形式返回对象
@RequestMapping(value = { "/book/class/{class}"},method = RequestMethod.GET)
@ApiOperation(response = Book.class, responseContainer="List", value = "Get all books of a class")
public Stream<Book> getBooksForAllClass(@PathVariable("class") String class) {
return myService.getBooksForClass().map(book -> Book.createBuilder().withBook();
}
重置服务消费者客户端我需要获取 Stream 对象并将其存储到列表中。因此,
List<Book> books = Lists.newArrayList();
RestTemplate restTemplate = new RestTemplate();
String resourceUri = String.format("%s/%s", serviceUrl, "class_a");
Book[] arrayOfBooks = restTemplate.getForObject(resourceUri, Book[].class);
books.addAll(Arrays.asList(arrayOfBooks));
这似乎不起作用。有什么方法可以通过 resttemplate 消费流对象吗?
【问题讨论】:
-
看看javax.ws.rs.container.AsyncResponse
标签: java web-services stream resttemplate