我有关于 servlet 3.0/3.1 规范的 spring 支持以及我在这篇文章中找到的大部分信息的谷歌: Understanding Callable and Spring DeferredResult
这里作者说你可以从控制器返回Callable
或返回DefferedResult
,并说它是春季维护的servlet 3.0/3.1。
但我不明白如何在我的情况下应用它:
我有外部系统,我从这个系统异步获得结果。
在控制器中我写了这样的东西:
externalSystenm.send(requestId, message);
我有另一个线程可以得到结果:
Message m = externalSystem.get();
m.getRequestId();// According this id I can map message to request
我知道在 servlet API 中我允许将 asyncContext 保存在地图中,然后找到它。
我怎样才能在春天实现它?