gpt4 book ai didi

reactive-programming - 如何从 Mono SpringWebFlux 返回一个对象

转载 作者:行者123 更新时间:2023-12-04 08:21:37 24 4
gpt4 key购买 nike

我正在使用 Spring Webflux,我需要在成功保存后返回用户 ID。

存储库正在返回 Mono

Mono<User> savedUserMono = repository.save(user);

但是从 Controller ,我需要返回从 save() 调用返回的对象中的用户 ID。

我曾尝试使用 doOn* 和 subscribe(),但是当我使用从订阅返回时,出现错误“意外的返回值”

最佳答案

任何时候您觉得需要转换或映射您的 Mono 中的内容到别的东西,然后你使用 map()方法,传递一个将进行转换的 lambda,如下所示:

Mono<Integer> userId = savedUserMono.map(user -> user.getId());

(当然,假设您的用户有一个 getId() 方法,而 id 是一个整数。)

在这种简单的情况下,您还可以选择使用双冒号语法以获得更简洁的语法:
Mono<Integer> userId = savedUserMono.map(User::getId);

由此产生的 Mono ,当订阅时,将发出用户的 ID。

关于reactive-programming - 如何从 Mono SpringWebFlux 返回一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57380963/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com