如何从 Spring Reactive API 中的 Mono<K> 获取 Flux<T>?

How to get Flux<T> from Mono<K> in Spring Reactive API?

我在 NoSQL 文档 db Photo 和 属性 中有两个独立的集合,其中 Photo 具有 属性Id 参数,这意味着我可以找到属于给定 属性 的所有照片,例如屋。通常没有反应我会简单地做:

Property property = ....
List<Photo> = photoService.findByPropertyId(property.getId());

只有两行。当我有

时如何在响应式编程中执行上述操作
`Mono<Property> and I want to find Flux<Photo>

不使用 block()?` 假设 aphotoService.findByPropertyId return 列表,在反应情况下它 returns Flux。

您应该使用 flatMapMany,它会从 Mono 的值触发异步处理,它可以发出多个元素:

Flux<Photo> photoFlux = propertyMono
    .flatMapMany(prop -> photoService.findByPropertyId(prop.getId()));