-4

OutputStreamサーブレットを使用せずにブラウザに直接バイト配列を書き込もうとしています。

それを行うJava APIはありますか?

4

1 に答える 1

3

ServerSocket( http://docs.oracle.com/javase/1.4.2/docs/api/java/net/ServerSocket.html )を使用してポート80でリッスンします。

リクエストが来るとaccept()、結果SocketgetInputStream()getOutputStream()メソッドを使用してストリーム オブジェクトを取得し、データ転送を処理します。

次に、 で受信したリクエストを解析し、を介しInputStreamて応答 ( HTTP ヘッダーを含む!!! ) を送信しますOutputStream。次に、接続を閉じて完了です。

パフォーマンスに影響を与えずに多くの同時リクエストを実際に処理できるサーバーを作成する必要がある場合は、Java の NIO フレームワークを確認する必要があります。スケーラブルなパフォーマンスが問題になる場合は、接続ごとに 1 つのスレッドを使用しないでください。

于 2013-02-11T06:47:24.597 に答える