Cliente HTTP moderno
Usa el HttpClient integrado para peticiones HTTP limpias y modernas.
Comparación de Código
✕ Java 8
URL url = new URL("https://api.com/data");
HttpURLConnection con =
(HttpURLConnection) url.openConnection();
con.setRequestMethod("GET");
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
// read lines, close streams...
✓ Java 11+
var client = HttpClient.newHttpClient();
var request = HttpRequest.newBuilder()
.uri(URI.create("https://api.com/data"))
.build();
var response = client.send(
request, BodyHandlers.ofString());
String body = response.body();
¿Ves un problema con este código? Cuéntanos.
Por qué gana la forma moderna
API con builder
Builder fluido para peticiones, cabeceras y tiempos de espera.
Soporte HTTP/2
HTTP/2 integrado con multiplexación y server push.
Preparado para asíncrono
sendAsync() devuelve CompletableFuture.
Enfoque Antiguo
HttpURLConnection
Enfoque Moderno
HttpClient
Desde JDK
11
Dificultad
Principiante
Soporte JDK
Cliente HTTP moderno
Disponible
Ampliamente disponible desde JDK 11 (septiembre de 2018)
Cómo funciona
HttpClient soporta HTTP/1.1 y HTTP/2, peticiones asíncronas, WebSocket, ejecutores personalizados y pooling de conexiones. No más casteo de URLConnection ni lectura manual de InputStreams.
Documentación Relacionada