Der Typ DefaultHttpClient ist veraltet

Der Typ DefaultHttpClient ist veraltet

Eclipse IDE fordert beinew DefaultHttpClient zur Warnung auf. Markieren Sie diese Klasse als veraltet.

package com.example.web.controller;

import org.apache.http.Header;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;

public class WebCrawler {

    public static void main(String[] args) throws Exception {

        HttpClient client = new DefaultHttpClient();
        HttpGet request = new HttpGet("/");
        HttpResponse response = client.execute(request);
        //...

    }

}

Lösung

Tauchen Sie in den Quellcode ein, siehe diese Kommentare:

DefaultHttpClient.java

 * @deprecated (4.3) use {@link HttpClientBuilder}.
 */
@ThreadSafe
@Deprecated
public class DefaultHttpClient extends AbstractHttpClient {
    //...

Verwenden Sie zur LösungHttpClientBuilder:

package com.hostingcompass.web.controller;

import org.apache.http.Header;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.HttpClientBuilder;

public class WebCrawler {

    public static void main(String[] args) throws Exception {

        HttpClient client = HttpClientBuilder.create().build();
        HttpGet request = new HttpGet("/");
        HttpResponse response = client.execute(request);
        //...

    }

}