如何获得 Flux<MyPojo>
从多个 Flux<MyPojo>
?
在一个非常简单的例子中:
public Flux<MyPojo> question() {
Flux<MyPojo> flux1 = getFluxMyPojoViaAPI();
Flux<MyPojo> flux2 = repository.findAll();
Flux<MyPojo> flux3 = getFluxMyPojoViaAnotherAPI();
Flux<MyPojo> flux4 = etc();
Flux<MyPojo> everythingTogetherAsFluxMyPojo = //how to achieve this please?
return everythingTogetherAsFluxMyPojo;
我在想怎么弄到 Flux<MyPojo>
从所有先前计算的 Flux<MyPojo>
尝试了zip和那些相关的api,最终得到了大量的元组。
有没有一个更简单更好的方法来获得 Flux<MyPojo>
从倍数 Flux<MyPojo>
拜托?
1条答案
按热度按时间du7egjpx1#
你可以用
Flux.merge(Publisher<? extends I>... sources)
:或者
Flux.concat(Publisher<? extends T>... sources)
:两者之间的重要区别
merge
以及concat
是吗merge
将一起订阅所有流量,并在任何流量到达时发布项目,而concat
将首先订阅第一个流量并发布其项目,直到它完成,然后订阅下一个流量,等等。