具有进度状态的Java / Spring线程

时间:2014-06-04 14:42:37

标签: java spring asynchronous task future

在我的网络应用程序中,我必须运行异步作业,我想在作业进度中管理客户端中的进度条。 在标准的Java或Spring包中是否有现成的东西?

我寻找Future对象,但似乎不符合我的目的。

1 个答案:

答案 0 :(得分:1)

在一个Web项目中,我实现了类似的东西。

在我的控制器中,我有一个这样的方法:

@RequestMapping(value = "/status", method = RequestMethod.GET)
public @ResponseBody
Integer getProgressStatus() {

    // check task running

    return progress;
}

然后在我的页面中,我异步调用该方法并检查百分比是否为< 100。

例如使用JQuery:

function waitForTaskFinish() {
    $.ajax({
        type : "GET",
        url : '/status',
        cache : false,
        success : function(data) {
            if (data < 100) {
                // display percentage...

                setTimeout("waitForTaskFinish()", 5000);
            }
            else{
                // your code
            }
        }
    });
}