Dalam landskap pembangunan Java yang luas, mencipta pelayan HTTP mudah mungkin kelihatan seperti tugas yang membosankan yang melibatkan penghuraian manual dan pemformatan. Walau bagaimanapun, dengan pengenalan Java SE 6, pelayan HTTP terbina dalam telah muncul, menawarkan penyelesaian yang dipermudahkan untuk cabaran ini.
Pelayan HTTP Terbenam dalam Java SE
Sejak Java SE 6, modul jdk.httpserver telah menyediakan kefungsian pelayan HTTP yang mantap. Modul ini merangkumi fungsi teras untuk mengendalikan permintaan HTTP dan memformatkan respons, menghapuskan keperluan untuk pengekodan manual.
Pelaksanaan:
Berikut ialah contoh mudah tentang cara melaksanakan Pelayan HTTP menggunakan jdk.httpserver modul:
// 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(); } } }
Pelaksanaan dan Respons:
Laksanakan kod ini dan navigasi ke http://localhost:8000/test dalam penyemak imbas anda. Respons berikut akan dipaparkan:
This is the response
Nota tentang com.sun.* Kelas:
Walaupun secara amnya disyorkan untuk mengelak daripada menggunakan kelas com.sun.* , adalah penting untuk ambil perhatian bahawa HttpServer dalam jdk.httpserver adalah pengecualian. Kelas ini dijamin akan hadir dalam semua Oracle JDK, memastikan kemudahalihan tanpa menjejaskan keserasian.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membina Pelayan HTTP Mudah di Java Menggunakan jdk.httpserver?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!