Return Mono.empty() 来自 Mono.fromCallable
Return Mono.empty() from Mono.fromCallable
我想做如下的事情。在 Mono.fromCallable I 运行 一些块逻辑中,然后基于值 I return Mono.empty() 或值,以便它触发映射或 defaultIfEmpty。
Mono.fromCallable(() -> {
double number = Math.random();
if (number < 0.5) {
return Mono.empty();
}
return number;
})
.map(number -> 1)
.defaultIfEmpty(0)
这给出了一个错误,因为 Mono.fromCallable 期望一个一致的 return 值。如何调整代码以使其正常工作?
尽管 returning null
通常在 Reactor API 中被禁止,但 Callable
可能 return 是一个有效值,并且 Reactor 通过转换为正确处理它空 Mono
:
Mono.fromCallable(() -> {
double number = Math.random();
if (number < 0.5) {
return null;
}
return number;
})
我想做如下的事情。在 Mono.fromCallable I 运行 一些块逻辑中,然后基于值 I return Mono.empty() 或值,以便它触发映射或 defaultIfEmpty。
Mono.fromCallable(() -> {
double number = Math.random();
if (number < 0.5) {
return Mono.empty();
}
return number;
})
.map(number -> 1)
.defaultIfEmpty(0)
这给出了一个错误,因为 Mono.fromCallable 期望一个一致的 return 值。如何调整代码以使其正常工作?
尽管 returning null
通常在 Reactor API 中被禁止,但 Callable
可能 return 是一个有效值,并且 Reactor 通过转换为正确处理它空 Mono
:
Mono.fromCallable(() -> {
double number = Math.random();
if (number < 0.5) {
return null;
}
return number;
})