我想进行一个异步休息调用,我正在使用spring webclient并取回一个Mono。我也在并行进行一些数据库调用,但由于某种原因不能被动地完成。
Map<String, Object> models = new HashMap<>();
Mono<User> users = this.webClient...;
users.map(resp -> new UserState(userRequest, resp))
.subscribe(response -> {
models.put("userState", response);
});
Iterable<Product> messages = this.productRepository.findAll();
models.put("products", messages);
//Wait for users.subscribe to finish <<<<<<<<<<<<<HERE
return new ModelAndView("messages/list", models);
如何在返回 ModelAndView 之前等待订阅完成。Future
如果我使用一个我可以get()
随时随地做的地方,这会很容易。