发送响应Servlet后的进程数据

时间:2012-10-15 09:39:23

标签: java web-applications servlets

我正在编写一个servlet,我必须处理用户数据。但是由于处理数据需要时间,我需要在处理数据之前发送用户和数据有效的响应。有没有办法可以先发送响应,然后处理数据。像,

response.send();
processData();

由于

3 个答案:

答案 0 :(得分:2)

将processData放在另一个线程中。例如:

if(!processOn){
    processOn = true;
    new Thread(){
        public void run(){
            processData();
        }
    }.start();
}
response.send();

其中proccessOn是一个会话/静态布尔值,用于不重新启动该过程两次。

答案 1 :(得分:0)

我不认为这是可能的,但是创建一个新的Thread来处理数据可能有所帮助。

答案 2 :(得分:0)

是和否。您无法发送响应,然后阅读请求内容。但是,您可以将请求内容作为字节数组读取,然后发送响应,然后执行数据的应用程序级解析。