我是Spring Reactive Project的新手。使用中出现问题。我有两个Flux,一个有更多元素,例如
Flux<Integer> bigFlux = Flux.range(1, 10);
还有人喜欢
Flux<Integer> smallFlux = Flux.just(3, 7);
如何获取bigFlux中未出现在smallFlux中的元素?我不知道该用哪个接线员。
我尝试过:
Flux<Integer> flux = bigFlux.filterWhen(one -> smallFlux.hasElement(one).map(a->!a));
但这并不明智,我通过复杂的操作获得了smallFlux,例如查询数据库、平面图操作。这样,bigFlux中有多少元素,这些操作将重复多少次。
事实上,小通量是通过这种方式获得的。
Flux<File> usedFile = repository.findAll()
.flatMap(one -> {
List<File> used = someMethods(one);
return Flux.fromIterable(used);
});
还有其他更好的解决方案吗,谢谢。
我认为这将是一个更干净、更快的解决方案
final Flux<Integer> bigListFlux = Flux.just(1, 2, 3);
final Flux<Integer> smallListFlux = Flux.just(3, 5, 6);
Mono.zip(bigListFlux.collectList(), smallListFlux.collectList(), (bigList, smallList) -> {
bigList.removeAll(smallList);
return bigList;
}).flatMapMany(Flux::fromIterable).map(element -> {
System.out.println("element = " + element);
return element;
}).subscribe(); // do not use subscribe/block in actual production code.
我使用了以下单声道的变体。邮政编码
https://projectreactor.io/docs/core/release/api/reactor/core/publisher/Mono.html#zip-Reactor。果心出版商单核Reactor。果心出版商Mono java。util。作用双功能-
我想压缩两个monos/Flux,但第二个(我将压缩的那个)与我已经拥有的第一个不同 例如: 可能吗?
问题内容: 我有两个嵌套在App Component上的CarouselComponent和BannerComponent组件。我想在CarouselComponent中获得BannerComponent中的元素以进行滚动功能。 代码在这里; -– App.js -– BannerComponent.js -– CarouselComponent.js 我想知道在所有情况下如何在React js中
首先,我对反应式编程有点陌生。在参加了一些关于reactor和spring 5.0的演讲后,我想自己尝试一下这个编程模型。 我有一个应用程序,它使用WebClient从不同的API构建两个Flux对象。我想将这2个对象组合成一个并将其返回给用户。 代码示例如下所示: 现在在我的handler方法中: 我应该使用反应器API中的什么方法来实现这一点?我找到了一些方法来组合像组合最新的对象,但是在这种
这里Book是根类,即最终的CSV将命名为books.CSV。 使用,我们只获得字段名title和author,但是我们还需要来自author类的字段名(name和age),有没有方法获得这些字段名?
我有一个Staff类,其中包含特定工作人员的角色列表。我还有staffList,它保存staff对象。 如果我只是使用get索引直接从rolesList中获取值,它将不会显示任何问题。 我认为它得到的是rolesList的一个版本,但不是那个特定的Staff对象中的版本 我已经在roleList中创建了一个新的Staff成员和一个角色,然后在构造Staff对象时使用了列表,因此使用该对象的getR
有可能做类似下面代码的事情吗?我有一个服务进行API调用,另一个返回值流。我需要用API调用返回的值修改每个值。 我尝试过用。repeat()处理单声道,它可以工作,但是每次有新的流量值时它都会调用方法,而且是API调用,所以不好。 有可能吗?