首页 文章

Spring webflux控制器:消费POJO vs Mono?

提问于
浏览
2

在控制器中我可以写:

fun update(@RequestBody myPojo: MyPojo): Mono<Void>

要么

fun update(@RequestBody myPojo: Mono<MyPojo>): Mono<Void>

有什么区别吗?身体解析会在不同的线程中完成吗?在第一种情况下,我将阻止主反应堆线程,直到 myPojo 被解析?

1 回答

  • 2

    两者之间没有强大的运行时差异;在第一种情况下,Spring会解包传入的 Mono ,但解码仍然会异步发生 .

    唯一的区别是没有 Mono 类型作为参数,您将无法在其上使用Reactor运算符 . 所以这真的是关于控制器处理程序需要实现的内容 .

相关问题