ホームページ >Java >&#&チュートリアル >Java SE APIを使用してJavaでシンプルなHTTPサーバーを作成するにはどうすればよいですか?

Java SE APIを使用してJavaでシンプルなHTTPサーバーを作成するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-09 21:16:14445ブラウズ

How to Create a Simple HTTP Server in Java using the Java SE API?

Java SE API を使用した Java でのシンプルな HTTP サーバーの作成

Java SE API は、HTTP クライアント機能用の HttpURLConnection クラスを提供します。ただし、この場合、手動で HTTP リクエストを解析し、HTTP レスポンスをフォーマットする作業が必要になりますが、これは面倒でエラーが発生しやすい作業です。

幸いなことに、Java SE 6 では、組み込みの HTTP サーバーが利用可能です。 jdk.httpserver モジュール内 (以前の com.sun.net.httpserver

ドキュメントを基にした簡単な例を次に示します。

import com.sun.net.httpserver.HttpExchange;
import com.sun.net.httpserver.HttpHandler;
import com.sun.net.httpserver.HttpServer;

public class MyHttpServer {

    public static void main(String[] args) throws Exception {
        HttpServer server = HttpServer.create(new InetSocketAddress(8000), 0);
        server.createContext("/test", new MyHandler());
        server.setExecutor(null); // creates a default executor
        server.start();
    }

    static class MyHandler implements HttpHandler {
        @Override
        public void handle(HttpExchange t) throws IOException {
            String response = "This is the response";
            t.sendResponseHeaders(200, response.length());
            OutputStream os = t.getResponseBody();
            os.write(response.getBytes());
            os.close();
        }
    }

}

このサーバーは、GET リクエストが http://localhost に送信されると、「これが応答です」と応答します。 8000/テスト。

注:

使用中com.sun.* クラスは実装目的では推奨されませんが、この HTTP サーバーのようなユーティリティ クラスでは禁止されていません。

以上がJava SE APIを使用してJavaでシンプルなHTTPサーバーを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。