Simple HTTP server in Java using only Java SE API

To create a simple HTTP server in Java using only the Java SE API, you can use the java.net package. Here is an example of how you can do this:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.InetSocketAddress;
import java.util.concurrent.Executors;

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

public class Main {
  public static void main(String[] args) throws Exception {
    HttpServer server = HttpServer.create(new InetSocketAddress(8000), 0);
    server.createContext("/test", new MyHandler());
    server.setExecutor(Executors.newCachedThreadPool());
    server.start();
  }
}

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

This code creates an HTTP server that listens on port 8000 and responds to requests to the /test path with the message "Hello World!".