Java SE API를 사용하여 Java에서 기본 HTTP 서버 생성
문제:
개발자 수동으로 요청을 구문 분석하고 응답 형식을 지정하지 않고 Java로 HTTP 서버를 생성해야 하는 문제에 직면하는 경우가 많습니다. 기존 솔루션에는 지루하고 오류가 발생하기 쉬운 코드가 포함되어 있어 버그가 발생하고 오류 처리가 충분하지 않습니다.
답변: Java에 내장된 HTTP 서버
Java SE 이후 6부터 Oracle JRE에는 Java 9의 jdk.httpserver 모듈로 알려진 내장 HTTP 서버가 포함되어 있습니다. 이 서버는 기본 HTTP 생성 프로세스를 단순화합니다. 서버를 사용하므로 수동으로 요청을 구문 분석하고 응답 형식을 지정할 필요가 없습니다.
예:
다음은 내장 HTTP 서버를 사용하는 간단한 예입니다.
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(); } } }
이 서버는 요청이 있을 때 "응답입니다"라는 메시지로 응답합니다. "/test".
com.sun.* 클래스에 대한 참고 사항:
com.sun.* 클래스를 사용하는 것은 일반적으로 Java API 사양 구현에 권장되지 않습니다. 내장 HTTP 서버는 예외입니다. 이는 JDK의 필수적인 부분이며 sun.* 패키지와 같은 이식성 문제를 일으키지 않습니다.
위 내용은 Java로 기본 HTTP 서버를 어떻게 쉽게 만들 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!