我一直在尝试用这个小应用程序学习 Project Reactor 3.0。我正在努力编写一个 Flux.zip() 函数来将变量组合到一个 Movie 对象。在 Reactor 中,返回类型似乎是Flux<Tuple5<>>
. 在 RxJava2 中,它返回一个Function5<>
.
RxJava2
Single<Movie> movie = Single.zip(getDesc(id), getCategory(id), getName(id), getRating(id),
(Function5<Integer, String, String, String, Double, Object>) (desc, cat, name, rating) ->
new Movie(id.blockingGet(), name, desc, cat, rating)).cast(Movie.class);
反应堆
Flux<Tuple5<Integer, String, String, String, Double>> tuple =
Flux.zip(id, getDesc(id), getCategory(id), getName(id), getRating(id));
我不想返回 aFlux<Tuple5<>>
我想返回 aTuple5<>
或其他东西来创建电影,就像 RxJava 一样。我不想订阅元组,因为我试图在 Spring Web Reactive 中返回它。我通过订阅暂时解决了它,但我想知道是否可以像 RxJava 一样做。
此视频中时间戳为 1:07:54的示例表明它在旧版本中是可能的。
欢迎任何解决方案或建议!