java.net.http · java.net.http · since Java 11

HttpClient

declaration
public abstract class HttpClient implements AutoCloseable

The modern built-in HTTP client: HTTP/2, connection pooling, sync send or async sendAsync via CompletableFuture. Build once, share application-wide.

Key methods

static HttpClient.Builder newBuilder()connectTimeout, followRedirects, executor, proxy…
<T> HttpResponse<T> send(HttpRequest, BodyHandler<T>)Blocking exchange.
<T> CompletableFuture<HttpResponse<T>> sendAsync(…)Non-blocking exchange.