java - DeferredResult 能否在 Spring MVC 4 中与 @ModelAttribute 一起使用?

标签 java spring-mvc asynchronous

我刚刚开始使用 Spring MVC 的 DeferredResult 注释。在文档中,明确指出 DeferredResult 可以用作 @RequestMapping 处理程序方法的返回类型。我目前正在使用此功能并行填充多个模型字段,并且仅在所有字段准备就绪时才调用 DeferredResult 上的 setResult。这可行,但需要相当多的同步代码。

文档没有涉及是否允许从 @ModelAttribute 方法返回 DeferredResult 的主题。这将允许我删除大部分同步样板,让 Spring 担心如何将所有这些组合在一起。

是否可以从使用 @ModelAttribute 注释的方法返回 DeferredResult

最佳答案

在试验了 DeferredResult@ModelAttribute 在实践中的工作方式后,我发现将它们一起使用根本行不通。 DeferredResult 真正代表您的 HTTP 请求的结果,您不能将它用于模型属性。

这是 Spring 4.0.0 的状态

关于java - DeferredResult 能否在 Spring MVC 4 中与 @ModelAttribute 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23952119/

相关文章:

java - 年月日的 Joda 期间

java - 如何生成 Firebase 身份验证 token Java?

spring-mvc - 自 unix 纪元以来的毫秒数作为 joda DateTime 的@RequestParameter

java - 如何使用@RequestMapping header ?

node.js - 从 Firestore 获取异步值

c# - 如果异步引发,事件会起作用吗?

java - jOOQ - 使用 QueryPart 占位符解析纯 sql

java - 如何在 Spring Boot 中为每个用户设置速率限制?

java - 在 Spring Controller 中同时执行两种方法时只有一次数据获取的最佳方法

javascript - 在延迟/ promise 实现中使用计时器是一种邪恶吗?