当前位置: 首页 > 知识库问答 >
问题:

SpringBoot(v2.3.1):Webflux Mono-Zip Monos列表

葛炯
2023-03-14

我想知道如何使用这个签名。拉链

public static <R> Mono<R> zip(final Iterable<? extends Mono<?>> monos, Function<? super Object[], ? extends R> combinator) {
    return onAssembly(new MonoZip<>(false, combinator, monos));
}

我有多个单声道创建从网络客户端请求,我想压缩。像这样分别供应每个单声道:

Mono.zip(m1, m2, m3, (a, b, c) -> {  })

但是如果一个单子的列表

List<Mono> monos = new ArrayList();

Mono.zip(monos, () -> {});

我得到一个错误:List

尝试使用是否合适。zip就是这种方式,如果是这样,我如何才能做到这一点。


共有1个答案

益明朗
2023-03-14

我可以看到这里有两件事:

  1. 在下面的签名中,第一个参数的类型为Iterable
public static <R> Mono<R> zip(final Iterable<? extends Mono<?>> monos, Function<? super Object[], ? extends R> combinator) {
    return onAssembly(new MonoZip<>(false, combinator, monos));
}

正确使用上述方法如下:

List<Mono<YourObject>> monos = new ArrayList<>();
        Mono.zip(monos, objectArray ->
                Arrays.stream(objectArray)
                        .map(object -> yourMapperFunction(object))
                        .collect(Collectors.toList())
        );

 类似资料:
  • 我不熟悉java和springboot。我正在尝试使用springboot创建一个CRUD应用程序。我使用MySQL存储数据。 员工模式- 员工资源库- 员工控制员- 上面的控制器在JSON对象数组表单中给出了结果,如下所示 但我需要以下表格的回复 非常感谢你的帮助。

  • 我有一个与cassandra连接的springboot应用程序。我试图在地图中创建一个地图,但得到了下面的异常。 代码 成年男子

  • 2.LocalDateTime字段上的序列化程序注释 为了确保我有正确的对象映射器设置和必要的依赖关系,我创建了一个rest控制器,将响应模拟为json作为restendpoint返回一个带有日期时间字段的对象,这将正确返回;示例:

  • 我在Hibernate状态下使用关系时得到空。这是我的代码用户实体 登录历史实体 要获取登录历史详细信息,请执行以下操作: 我得到一张空名单。请帮忙

  • 如何将YAML列表加载到Spring框架项目中的Java列表(没有springboot)? 我看到它在springboot项目中与一起工作。但我无法让它在纯spring框架项目中使用。似乎注释无法正确解析列表。 下面是一个示例项目:https://github.com/KiranMohan/spring-yaml. 为了加载yaml文件,我使用了。 代码在jUnit类中进行测试。 输出is 示例y

  • 我似乎很专注于如何去硬化数组数组。我对这些工具很陌生,无法处理JSON文件,我能够去硬化来自国家(https://restcountries.eu/rest/v2/all)的REST应用编程接口的JSON,但我现在正试图从开放天空应用编程接口(https://opensky-network.org/api/states/all?lamin=45.8389 我有这门课: 有能手和二传手 还有这个: