【发布时间】:2021-07-05 13:26:52
【问题描述】:
这是我面临的问题的简化示例。
Flux<String> fluxString = Flux.just("A","B","C");
Mono<String> monoString = Mono.just("Original");
预期结果是这样的
Mono<String> expectedresult = "Original A B C";
方法 1 -> 我可以等待接收到助焊剂的所有元素,然后将它们与单声道组合
或
方法 2-> 将通量的每个元素组合成单声道,并在接收到下一个通量元素之前用新值更新原始单声道。 以上哪种方法适合我?
我用下面的代码尝试了方法 2
Flux<String> fluxfrommono = monoString.flatMapMany(a-> Mono.just(a).repeat());
Flux.zip(fluxfrommono ,fluxString ,(a,b)-> a+b)
但这会产生“原始 A”、“原始 B”、“原始 C”->原始字符串不会更新为每个通量元素的新值。
如何做到这一点?
【问题讨论】:
标签: java spring spring-webflux project-reactor reactor-netty