我剛從 Spring Webflux 開始,我想知道以下呼叫是否是在反應流中加載其他專案的好方法,以及是否有另一個運算子可以簡化此呼叫:
Mono<Foo> fooMono = fooService.loadFoo();
fooMono.flatMap(foo -> barService.loadBarForFoo(foo).flatMap(bar -> Mono.just(foo)))
例如:fooMono可能是通過 a 加載的東西WebClient,并且barService.loadBarFromFoo 知道如何加載Bar給定的 aFoo然后插入bar到foo. 最后,我想foo回去執行更多操作,例如將另一個資源加載到foo.
最后創建一個新的 Mono 是一種好習慣,foo還是可能有另一個運算子可以用來簡化這個?
uj5u.com熱心網友回復:
嗨,thenReturn假設您不需要使用loadBarForFoo方法的結果,您可以使用。
fooMono.flatMap(foo -> barService.loadBarForFoo(foo).thenReturn(foo));
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/486344.html
標籤:春天 spring-webflux
上一篇:java中具有多個欄位的通用屬性
