RestTemplateが採用するHTTPクライアント実装の順序
By default the built RestTemplate will attempt to use the most suitable ClientHttpRequestFactory
とありますが、具体的にどうやって決めているの?という話です。
ClientHttpRequestFactorySupplierをみると一目瞭然ですが、
-
Apache HttpClient (
org.apache.http.client.HttpClient) がクラスパスに存在すればそれを採用する -
OkHttp (
okhttp3.OkHttpClient) がクラスパスに存在すればそれを採用する -
上記のものがいずれも無ければ
java.net.HttpURLConnectionを採用する
という実装になっています。