spring Mono< Void>和Mono.empty()有什么不同

nwlqm0z1  于 2023-04-19  发布在  Spring
关注(0)|答案(1)|浏览(843)

在Spring WebFlux reactor中
Mono<Void>表示空单声道
Mono.empty()指的是void,因为在此之上调用任何东西都会给出一个空指针。

  • 它们的用法有何不同 *
z9smfwbn

z9smfwbn1#

Mono<T>是一个泛型类型-在您的特定情况下,它将Void类型表示为Mono<Void>
Mono.empty()-返回一个Mono,它完成时不发出任何项目。
假设你有一个方法:

private Mono<Void> doNothing() {
    return Mono.empty();
}

当你想在返回Mono.empty()的方法调用之后链接任何东西时,它将不适用于flatMap,因为它是a completed Mono。如果你想在该方法之后继续另一个作业,你可以使用运算符then

doNothing().then(doSomething())

相关问题