1

ユーザーデータを処理する必要があるサーブレットを作成しています。ただし、データの処理には時間がかかるため、データを処理する前に、ユーザーとデータが有効であるという応答を送信する必要があります。最初に応答を送信してからデータを処理する方法はありますか?何かのようなもの、

response.send();
processData();

ありがとう

4

3 に答える 3

2

processDataを別のスレッドに配置します。元:

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

ここで、proccessOnは、プロセスを2回再起動しないために使用されるセッション/静的ブール値です。

于 2012-10-15T09:49:33.717 に答える
0

それは不可能だと思いますがThread、データを処理するために新しいものを作成すると役立つ場合があります。

于 2012-10-15T09:45:03.560 に答える
0

はいといいえ。応答を送信してから要求の内容を読み取ることはできません。ただし、要求の内容をバイト配列として読み取り、応答を送信してから、データのアプリケーションレベルの解析を実行することはできます。

于 2012-10-15T09:50:02.763 に答える