Maison > Java > javaDidacticiel > Comment puis-je créer un serveur HTTP simple en Java à l'aide de jdk.httpserver ?

Comment puis-je créer un serveur HTTP simple en Java à l'aide de jdk.httpserver ?

DDD
Libérer: 2024-12-08 00:38:11
original
827 Les gens l'ont consulté

How Can I Build a Simple HTTP Server in Java Using jdk.httpserver?

Serveur HTTP simple en Java : un guide complet

Dans le vaste paysage du développement Java, la création d'un serveur HTTP simple peut sembler une tâche fastidieuse impliquant une analyse manuelle et formatage. Cependant, avec l'introduction de Java SE 6, un serveur HTTP intégré a émergé, offrant une solution simplifiée à ce défi.

Serveur HTTP intégré dans Java SE

Depuis Java SE 6, le module jdk.httpserver fournit une fonctionnalité de serveur HTTP robuste. Ce module encapsule les fonctionnalités de base pour gérer les requêtes HTTP et formater les réponses, éliminant ainsi le besoin de codage manuel.

Mise en œuvre :

Voici un exemple simple de la façon de mettre en œuvre un Serveur HTTP utilisant le module jdk.httpserver :

// com.stackoverflow.q3732109
import com.sun.net.httpserver.HttpExchange;
import com.sun.net.httpserver.HttpHandler;
import com.sun.net.httpserver.HttpServer;
import java.io.IOException;
import java.io.OutputStream;
import java.net.InetSocketAddress;

public class Test {

    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();
        }
    }
}
Copier après la connexion

Exécution et Réponse :

Exécutez ce code et accédez à http://localhost:8000/test dans votre navigateur. La réponse suivante s'affichera :

This is the response
Copier après la connexion

Remarque sur les classes com.sun.* :

Bien qu'il soit généralement recommandé d'éviter d'utiliser les classes com.sun.* , il est important de noter que le HttpServer dans jdk.httpserver est une exception. Cette classe est garantie d'être présente dans tous les JDK Oracle, garantissant la portabilité sans compromettre la compatibilité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal