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
を採用する
という実装になっています。