Spring 5 Reactive Mono-将Mono值传递给对象的属性并调用另一个Mono

问题描述

我是整个Spring反应式Webflux的新手。我的问题很简单。在我的addActions()中,我试图通过调用getCurrentVal()获得一个Mono。这很好。但是我需要获取该值并更新属性(submission.stateVal)。然后传递调用customService.addActions(),它返回Mono。无需使用block()就能做到吗?

@Autowired
private CustomService customService;

public Mono<CustomResponse> addActions(String id,String Jwt,Submission submission) {

Mono<String> updatedStateVal = getCurrentStateVal(tpJwt,id);
// submission.setStateVal(updatedStateVal);
// return customService.addActions(id,jwt,submission);


}

private Mono<String> getCurrentVal(String tpJwt,String id) {
        return customService.findById(id,tpJwt)
                .map(r -> r.getStateVal());
}

解决方法

return getCurrentStateVal(tpJwt,id)
    .flatMap(s -> {
        submission.setStateVal(s);
        return customService.addActions(id,tpJwt,submission);
    });

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...