我在写一个servlet,我必须处理用户数据。但是由于处理数据需要时间,我需要在处理数据之前发送用户和数据有效的响应。有没有办法可以先发送回复,然后处理数据。喜欢的东西,发送响应后的处理数据Servlet
response.send();
processData();
感谢
我在写一个servlet,我必须处理用户数据。但是由于处理数据需要时间,我需要在处理数据之前发送用户和数据有效的响应。有没有办法可以先发送回复,然后处理数据。喜欢的东西,发送响应后的处理数据Servlet
response.send();
processData();
感谢
将processData放入不同的线程。例如:
if(!processOn){
processOn = true;
new Thread(){
public void run(){
processData();
}
}.start();
}
response.send();
其中proccessOn是用于不重新启动进程两次的会话/静态布尔值。
我不认为这是可能的,但是可能创造一个新的Thread
来处理数据可能会有所帮助。
是和否。您无法发送回复,然后阅读请求内容。但是,您可以将请求内容作为字节数组读取,然后发送响应,然后执行数据的应用程序级解析。
如果您的应用程序在您发送回应后以及在处理之前/期间爆炸了,该怎么办? –
想想@罗曼的评论。 –
是的,我有和在我的情况下处理数据不如存储它,这是更早完成重要。数据只是为了更好的用户交互性而被处理,如果一些数据没有被处理,这不是什么大问题。希望应用程序不会每次吹:)顺便说一句,谢谢 –