Création d'un serveur HTTP de base en Java à l'aide de l'API Java SE
Problème :
Développeurs sont souvent confrontés au défi de créer des serveurs HTTP en Java sans analyser manuellement les requêtes ni formater les réponses. Les solutions existantes impliquent du code fastidieux et sujet aux erreurs, sujet aux bugs et à une gestion insuffisante des erreurs.
Réponse : serveur HTTP intégré à Java
Depuis Java SE 6, Oracle JRE inclut un serveur HTTP intégré, connu sous le nom de module jdk.httpserver dans Java 9. Ce serveur simplifie le processus de création de serveurs HTTP de base, éliminant ainsi le besoin pour l'analyse manuelle des requêtes et le formatage des réponses.
Exemple :
Voici un exemple simple d'utilisation du serveur HTTP intégré :
import com.sun.net.httpserver.HttpExchange; import com.sun.net.httpserver.HttpHandler; import com.sun.net.httpserver.HttpServer; public class SimpleHttpServer { public static void main(String[] args) throws Exception { HttpServer server = HttpServer.create(new InetSocketAddress(8000), 0); server.createContext("/test", new MyHandler()); 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(); } } }
Ce serveur répond avec le message "Ceci est la réponse" lorsqu'une requête est faite à "/test".
Remarque sur les classes com.sun.* :
Bien que l'utilisation des classes com.sun.* soit généralement déconseillée pour la mise en œuvre des spécifications de l'API Java, le serveur HTTP intégré est une exception. Il fait partie intégrante du JDK et ne pose pas de problèmes de portabilité comme le package sun.*.
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!