【发布时间】:2021-11-06 23:30:42
【问题描述】:
我正在使用包含块的页面构建内容管理系统。我获取具有 id 的页面,然后获取与同一页面 id 关联的块。以阻塞的方式,我会这样做:
Page page = repo.getPageById(47);
page.setBlocks(repo.getBlocksByPageId(47));
当做这个反应时,flatMaps 和 zipWith 是一团糟:
Mono<Page> = repo.getPageById(47)
.flatMap(page -> repo.getBlocksByPageId(47).collectList().zipWith(Mono.just(page)))
.flatMap(t -> {
List<Block> blocks = t.getT1();
Page page = t.getT2();
page.setBlocks(blocks);
return Mono.just(page);
});
你能推荐更好的方法来达到同样的效果吗?
【问题讨论】:
标签: java spring-webflux