DeferredResult可用于得到异步返回结果

例:

/**
     * 异步请求,当DeferredResult.setResult时,可得到返回结果
     * @return
     */
    @ResponseBody
    @RequestMapping(value="/createOrder")
    public DeferredResult<Object> createOrder() {
        DeferredResult<Object> result = new DeferredResult<Object>(3000L, "error");
        DeferredResultQueue.saveDeferredResult(result);
        return result;
    }
    
    /**
     * 异步处理线程
     * @return
     */
    @ResponseBody
    @RequestMapping(value="/create")
    public String create() {
        DeferredResult<Object> result = DeferredResultQueue.get();
        String orderId = UUID.randomUUID().toString();
        result.setResult(orderId);
        return "success" + orderId;
    }