クラス RestTemplate

実装されたすべてのインターフェース:
RestOperations

public class RestTemplate extends InterceptingHttpAccessor implements RestOperations
HTTP リクエストを実行する同期クライアント。JDK HttpURLConnection、Apache HttpComponents などの基盤となる HTTP クライアントライブラリを介して、シンプルなテンプレートメソッド API を公開します。RestTemplate は、あまり頻繁でないケースをサポートする一般化された exchange および execute メソッドに加えて、HTTP メソッドによる一般的なシナリオのテンプレートを提供します。

RestTemplate は通常、共有コンポーネントとして使用されます。ただし、その構成は同時変更をサポートしていないため、その構成は通常、起動時に準備されます。必要に応じて、起動時に複数の異なる構成の RestTemplate インスタンスを作成できます。このようなインスタンスは、HTTP クライアントリソースを共有する必要がある場合、同じ基礎となる ClientHttpRequestFactory を使用できます。

注意 : 6.1 以降、RestClient は同期 HTTP アクセス用のより最新の API を提供します。非同期およびストリーミングのシナリオの場合は、リアクティブ WebClient を検討してください。

RestTemplate と RestClient は同じインフラストラクチャ (つまり、リクエストファクトリ、リクエストインターセプタおよびイニシャライザーメッセージコンバーターなど) を共有するため、そこで行われた改善も同様に共有されます。ただし、RestClient は新しい高レベルの機能に焦点を当てています。

導入:
3.0
作成者:
Arjen Poutsma, Brian Clozel, Roy Clarkson, Juergen Hoeller, Sam Brannen, Sebastien Deleuze, Hyoungjune Kim
関連事項:
  • コンストラクターの詳細

  • メソッドの詳細

    • setMessageConverters

      public void setMessageConverters(ListSE<HttpMessageConverter<?>> messageConverters)
      使用するメッセージ本文コンバーターを設定します。

      これらのコンバーターは、HTTP リクエストとレスポンスの変換に使用されます。

    • getMessageConverters

      public ListSE<HttpMessageConverter<?>> getMessageConverters()
      メッセージ本文コンバーターのリストを返します。

      返された ListSE はアクティブであり、追加される場合があります。

    • setErrorHandler

      public void setErrorHandler(ResponseErrorHandler errorHandler)
      エラーハンドラーを設定します。

      デフォルトでは、RestTemplate は DefaultResponseErrorHandler を使用します。

    • getErrorHandler

      public ResponseErrorHandler getErrorHandler()
      エラーハンドラーを返します。
    • setDefaultUriVariables

      public void setDefaultUriVariables(MapSE<StringSE,?> uriVars)
      デフォルトの URI 変数値を構成します。これは次のショートカットです:
       DefaultUriBuilderFactory factory = new DefaultUriBuilderFactory();
       handler.setDefaultUriVariables(...);
      
       RestTemplate restTemplate = new RestTemplate();
       restTemplate.setUriTemplateHandler(handler);
       
      パラメーター:
      uriVars - デフォルトの URI 変数値
      導入:
      4.3
    • setUriTemplateHandler

      public void setUriTemplateHandler(UriTemplateHandler handler)
      URI テンプレートを展開するための戦略を構成します。

      デフォルトでは、DefaultUriBuilderFactory が使用され、後方互換性のために、エンコードモードは URI_COMPONENT に設定されます。5.0.8 では、TEMPLATE_AND_VALUES を使用することを優先します。

      パラメーター:
      handler - 使用する URI テンプレートハンドラー
    • getUriTemplateHandler

      public UriTemplateHandler getUriTemplateHandler()
      設定済みの URI テンプレートハンドラーを返します。
    • setObservationRegistry

      public void setObservationRegistry(io.micrometer.observation.ObservationRegistry observationRegistry)
      リクエスト実行のスパンとメトリクスを収集するために ObservationRegistry を構成します。デフォルトでは、observations はノーオペレーションです。
      パラメーター:
      observationRegistry - 使用する観測レジストリ
      導入:
      6.0
    • getObservationRegistry

      public io.micrometer.observation.ObservationRegistry getObservationRegistry()
      設定された ObservationRegistry を返します。
      導入:
      6.1
    • setObservationConvention

      public void setObservationConvention(ClientRequestObservationConvention observationConvention)
      ClientRequestObservationContext から抽出された observation とその KeyValues の名前を設定する ObservationConvention を構成します。何も設定されていない場合、default convention が使用されます。
      パラメーター:
      observationConvention - 使用する観察規則
      導入:
      6.0
      関連事項:
    • getObservationConvention

      @Nullable public ClientRequestObservationConvention getObservationConvention()
      構成された ClientRequestObservationConvention、または設定されていない場合は null を返します。
      導入:
      6.1
    • getForObject

      @Nullable public <T> T getForObject(StringSE url, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URL で GET を実行して、表現を取得します。レスポンス(ある場合)が変換されて返されます。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      次で指定:
      インターフェース RestOperationsgetForObject 
      パラメーター:
      url - URL
      responseType - 戻り値の型
      uriVariables - テンプレートを展開する変数
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
    • getForObject

      @Nullable public <T> T getForObject(StringSE url, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      URI テンプレートで GET を実行して、表現を取得します。レスポンス(ある場合)が変換されて返されます。

      URI テンプレート変数は、指定されたマップを使用して展開されます。

      次で指定:
      インターフェース RestOperationsgetForObject 
      パラメーター:
      url - URL
      responseType - 戻り値の型
      uriVariables - URI テンプレートの変数を含むマップ
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
    • getForObject

      @Nullable public <T> T getForObject(URISE url, ClassSE<T> responseType) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      URL で GET を実行して表現を取得します。レスポンス (存在する場合) が変換されて返されます。
      次で指定:
      インターフェース RestOperationsgetForObject 
      パラメーター:
      url - URL
      responseType - 戻り値の型
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
    • getForEntity

      public <T> ResponseEntity<T> getForEntity(StringSE url, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URL で GET を実行して、エンティティを取得します。レスポンスは変換され、ResponseEntity に格納されます。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      次で指定:
      インターフェース RestOperationsgetForEntity 
      パラメーター:
      url - URL
      responseType - 戻り値の型
      uriVariables - テンプレートを展開する変数
      戻り値:
      エンティティ
      例外:
      RestClientException
    • getForEntity

      public <T> ResponseEntity<T> getForEntity(StringSE url, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      URI テンプレートで GET を実行して表現を取得します。レスポンスは変換され、ResponseEntity に格納されます。

      URI テンプレート変数は、指定されたマップを使用して展開されます。

      次で指定:
      インターフェース RestOperationsgetForEntity 
      パラメーター:
      url - URL
      responseType - 戻り値の型
      uriVariables - URI テンプレートの変数を含むマップ
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
    • getForEntity

      public <T> ResponseEntity<T> getForEntity(URISE url, ClassSE<T> responseType) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      URL で GET を実行して表現を取得します。レスポンスは変換され、ResponseEntity に格納されます。
      次で指定:
      インターフェース RestOperationsgetForEntity 
      パラメーター:
      url - URL
      responseType - 戻り値の型
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
    • headForHeaders

      public HttpHeaders headForHeaders(StringSE url, ObjectSE... uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      URI テンプレートで指定されたリソースのすべてのヘッダーを取得します。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      次で指定:
      インターフェース RestOperationsheadForHeaders 
      パラメーター:
      url - URL
      uriVariables - テンプレートを展開する変数
      戻り値:
      そのリソースのすべての HTTP ヘッダー
      例外:
      RestClientException
    • headForHeaders

      public HttpHeaders headForHeaders(StringSE url, MapSE<StringSE,?> uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      URI テンプレートで指定されたリソースのすべてのヘッダーを取得します。

      URI テンプレート変数は、指定されたマップを使用して展開されます。

      次で指定:
      インターフェース RestOperationsheadForHeaders 
      パラメーター:
      url - URL
      uriVariables - URI テンプレートの変数を含むマップ
      戻り値:
      そのリソースのすべての HTTP ヘッダー
      例外:
      RestClientException
    • headForHeaders

      public HttpHeaders headForHeaders(URISE url) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      URL で指定されたリソースのすべてのヘッダーを取得します。
      次で指定:
      インターフェース RestOperationsheadForHeaders 
      パラメーター:
      url - URL
      戻り値:
      そのリソースのすべての HTTP ヘッダー
      例外:
      RestClientException
    • postForLocation

      @Nullable public URISE postForLocation(StringSE url, @Nullable ObjectSE request, ObjectSE... uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、Location ヘッダーの値を返します。通常、このヘッダーは新しいリソースが保存される場所を示します。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      エンティティの本体、または request 自体は、マルチパートリクエストを作成するために MultiValueMap にすることができます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity のいずれかです。

      次で指定:
      インターフェース RestOperationspostForLocation 
      パラメーター:
      url - URL
      request - POST されるオブジェクト (null の場合があります)
      uriVariables - テンプレートを展開する変数
      戻り値:
      Location ヘッダーの値
      例外:
      RestClientException
      関連事項:
    • postForLocation

      @Nullable public URISE postForLocation(StringSE url, @Nullable ObjectSE request, MapSE<StringSE,?> uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、Location ヘッダーの値を返します。通常、このヘッダーは新しいリソースが保存される場所を示します。

      URI テンプレート変数は、指定されたマップを使用して展開されます。

      request パラメーターは、追加の HTTP ヘッダーをリクエストに追加するために HttpEntity にすることができます

      エンティティの本体、または request 自体は、マルチパートリクエストを作成するために MultiValueMap にすることができます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity のいずれかです。

      次で指定:
      インターフェース RestOperationspostForLocation 
      パラメーター:
      url - URL
      request - POST されるオブジェクト (null の場合があります)
      uriVariables - テンプレートを展開する変数
      戻り値:
      Location ヘッダーの値
      例外:
      RestClientException
      関連事項:
    • postForLocation

      @Nullable public URISE postForLocation(URISE url, @Nullable ObjectSE request) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URL に POST して新しいリソースを作成し、Location ヘッダーの値を返します。通常、このヘッダーは新しいリソースが保存される場所を示します。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      エンティティの本体、または request 自体は、マルチパートリクエストを作成するために MultiValueMap にすることができます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity のいずれかです。

      次で指定:
      インターフェース RestOperationspostForLocation 
      パラメーター:
      url - URL
      request - POST されるオブジェクト (null の場合があります)
      戻り値:
      Location ヘッダーの値
      例外:
      RestClientException
      関連事項:
    • postForObject

      @Nullable public <T> T postForObject(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、レスポンスで見つかった表現を返します。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      エンティティの本体、または request 自体は、マルチパートリクエストを作成するために MultiValueMap にすることができます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity のいずれかです。

      次で指定:
      インターフェース RestOperationspostForObject 
      パラメーター:
      url - URL
      request - POST されるオブジェクト (null の場合があります)
      responseType - 戻り値の型
      uriVariables - テンプレートを展開する変数
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
      関連事項:
    • postForObject

      @Nullable public <T> T postForObject(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、レスポンスで見つかった表現を返します。

      URI テンプレート変数は、指定されたマップを使用して展開されます。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      エンティティの本体、または request 自体は、マルチパートリクエストを作成するために MultiValueMap にすることができます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity のいずれかです。

      次で指定:
      インターフェース RestOperationspostForObject 
      パラメーター:
      url - URL
      request - POST されるオブジェクト (null の場合があります)
      responseType - 戻り値の型
      uriVariables - テンプレートを展開する変数
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
      関連事項:
    • postForObject

      @Nullable public <T> T postForObject(URISE url, @Nullable ObjectSE request, ClassSE<T> responseType) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URL に POST して新しいリソースを作成し、レスポンスで見つかった表現を返します。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      エンティティの本体、または request 自体は、マルチパートリクエストを作成するために MultiValueMap にすることができます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity のいずれかです。

      次で指定:
      インターフェース RestOperationspostForObject 
      パラメーター:
      url - URL
      request - POST されるオブジェクト (null の場合があります)
      responseType - 戻り値の型
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
      関連事項:
    • postForEntity

      public <T> ResponseEntity<T> postForEntity(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、レスポンスを ResponseEntity として返します。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      エンティティの本体、または request 自体は、マルチパートリクエストを作成するために MultiValueMap にすることができます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity のいずれかです。

      次で指定:
      インターフェース RestOperationspostForEntity 
      パラメーター:
      url - URL
      request - POST されるオブジェクト (null の場合があります)
      uriVariables - テンプレートを展開する変数
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
      関連事項:
    • postForEntity

      public <T> ResponseEntity<T> postForEntity(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、レスポンスを HttpEntity として返します。

      URI テンプレート変数は、指定されたマップを使用して展開されます。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      エンティティの本体、または request 自体は、マルチパートリクエストを作成するために MultiValueMap にすることができます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity のいずれかです。

      次で指定:
      インターフェース RestOperationspostForEntity 
      パラメーター:
      url - URL
      request - POST されるオブジェクト (null の場合があります)
      uriVariables - テンプレートを展開する変数
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
      関連事項:
    • postForEntity

      public <T> ResponseEntity<T> postForEntity(URISE url, @Nullable ObjectSE request, ClassSE<T> responseType) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URL に POST して新しいリソースを作成し、レスポンスを ResponseEntity として返します。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      エンティティの本体、または request 自体は、マルチパートリクエストを作成するために MultiValueMap にすることができます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity のいずれかです。

      次で指定:
      インターフェース RestOperationspostForEntity 
      パラメーター:
      url - URL
      request - POST されるオブジェクト (null の場合があります)
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
      関連事項:
    • put

      public void put(StringSE url, @Nullable ObjectSE request, ObjectSE... uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URI に PUT することにより、リソースを作成または更新します。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      次で指定:
      インターフェース RestOperationsput 
      パラメーター:
      url - URL
      request - PUT されるオブジェクト (null の場合があります)
      uriVariables - テンプレートを展開する変数
      例外:
      RestClientException
      関連事項:
    • put

      public void put(StringSE url, @Nullable ObjectSE request, MapSE<StringSE,?> uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URI テンプレートに PUT することにより、新しいリソースを作成します。

      URI テンプレート変数は、指定されたマップを使用して展開されます。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      次で指定:
      インターフェース RestOperationsput 
      パラメーター:
      url - URL
      request - PUT されるオブジェクト (null の場合があります)
      uriVariables - テンプレートを展開する変数
      例外:
      RestClientException
      関連事項:
    • put

      public void put(URISE url, @Nullable ObjectSE request) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URL に PUT することにより、新しいリソースを作成します。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      次で指定:
      インターフェース RestOperationsput 
      パラメーター:
      url - URL
      request - PUT されるオブジェクト (null の場合があります)
      例外:
      RestClientException
      関連事項:
    • patchForObject

      @Nullable public <T> T patchForObject(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URI テンプレートにパッチしてリソースを更新し、レスポンスで見つかった表現を返します。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      NOTE: 標準の JDK HTTP ライブラリは HTTP PATCH をサポートしていません。たとえば、Apache HttpComponents リクエストファクトリを使用する必要があります。

      次で指定:
      インターフェース RestOperationspatchForObject 
      パラメーター:
      url - URL
      request - パッチされるオブジェクト (null の場合があります)
      responseType - 戻り値の型
      uriVariables - テンプレートを展開する変数
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
      関連事項:
    • patchForObject

      @Nullable public <T> T patchForObject(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URI テンプレートにパッチしてリソースを更新し、レスポンスで見つかった表現を返します。

      URI テンプレート変数は、指定されたマップを使用して展開されます。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      NOTE: 標準の JDK HTTP ライブラリは HTTP PATCH をサポートしていません。たとえば、Apache HttpComponents リクエストファクトリを使用する必要があります。

      次で指定:
      インターフェース RestOperationspatchForObject 
      パラメーター:
      url - URL
      request - パッチされるオブジェクト (null の場合があります)
      responseType - 戻り値の型
      uriVariables - テンプレートを展開する変数
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
      関連事項:
    • patchForObject

      @Nullable public <T> T patchForObject(URISE url, @Nullable ObjectSE request, ClassSE<T> responseType) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定されたオブジェクトを URL にパッチしてリソースを更新し、レスポンスで見つかった表現を返します。

      リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。

      NOTE: 標準の JDK HTTP ライブラリは HTTP PATCH をサポートしていません。たとえば、Apache HttpComponents リクエストファクトリを使用する必要があります。

      次で指定:
      インターフェース RestOperationspatchForObject 
      パラメーター:
      url - URL
      request - パッチされるオブジェクト (null の場合があります)
      responseType - 戻り値の型
      戻り値:
      変換されたオブジェクト
      例外:
      RestClientException
      関連事項:
    • delete

      public void delete(StringSE url, ObjectSE... uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URI のリソースを削除します。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      次で指定:
      インターフェース RestOperationsdelete 
      パラメーター:
      url - URL
      uriVariables - テンプレートで展開する変数
      例外:
      RestClientException
    • delete

      public void delete(StringSE url, MapSE<StringSE,?> uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URI のリソースを削除します。

      URI テンプレート変数は、指定されたマップを使用して展開されます。

      次で指定:
      インターフェース RestOperationsdelete 
      パラメーター:
      url - URL
      uriVariables - テンプレートを展開する変数
      例外:
      RestClientException
    • delete

      public void delete(URISE url) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URL のリソースを削除します。
      次で指定:
      インターフェース RestOperationsdelete 
      パラメーター:
      url - URL
      例外:
      RestClientException
    • optionsForAllow

      public SetSE<HttpMethod> optionsForAllow(StringSE url, ObjectSE... uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URI の Allow ヘッダーの値を返します。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      次で指定:
      インターフェース RestOperationsoptionsForAllow 
      パラメーター:
      url - URL
      uriVariables - テンプレートで展開する変数
      戻り値:
      Allow ヘッダーの値
      例外:
      RestClientException
    • optionsForAllow

      public SetSE<HttpMethod> optionsForAllow(StringSE url, MapSE<StringSE,?> uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URI の Allow ヘッダーの値を返します。

      URI テンプレート変数は、指定されたマップを使用して展開されます。

      次で指定:
      インターフェース RestOperationsoptionsForAllow 
      パラメーター:
      url - URL
      uriVariables - テンプレートで展開する変数
      戻り値:
      Allow ヘッダーの値
      例外:
      RestClientException
    • optionsForAllow

      public SetSE<HttpMethod> optionsForAllow(URISE url) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URL の Allow ヘッダーの値を返します。
      次で指定:
      インターフェース RestOperationsoptionsForAllow 
      パラメーター:
      url - URL
      戻り値:
      Allow ヘッダーの値
      例外:
      RestClientException
    • exchange

      public <T> ResponseEntity<T> exchange(StringSE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      次で指定:
      インターフェース RestOperationsexchange 
      パラメーター:
      url - URL
      method - HTTP メソッド (GET、POST など)
      requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文)は null の場合があります)
      responseType - レスポンスを変換する型、または本体なしの場合は Void.class 
      uriVariables - テンプレートで展開する変数
      戻り値:
      エンティティとしてのレスポンス
      例外:
      RestClientException
    • exchange

      public <T> ResponseEntity<T> exchange(StringSE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      次で指定:
      インターフェース RestOperationsexchange 
      パラメーター:
      url - URL
      method - HTTP メソッド (GET、POST など)
      requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)
      responseType - レスポンスを変換する型、または本体なしの場合は Void.class 
      uriVariables - テンプレートで展開する変数
      戻り値:
      エンティティとしてのレスポンス
      例外:
      RestClientException
    • exchange

      public <T> ResponseEntity<T> exchange(URISE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ClassSE<T> responseType) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。
      次で指定:
      インターフェース RestOperationsexchange 
      パラメーター:
      url - URL
      method - HTTP メソッド (GET、POST など)
      requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)
      responseType - レスポンスを変換する型、または本体なしの場合は Void.class 
      戻り値:
      エンティティとしてのレスポンス
      例外:
      RestClientException
    • exchange

      public <T> ResponseEntity<T> exchange(StringSE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, ObjectSE... uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。指定された ParameterizedTypeReference は、ジェネリクス型情報を渡すために使用されます。
       ParameterizedTypeReference<List<MyBean>> myBean =
           new ParameterizedTypeReference<List<MyBean>>() {};
      
       ResponseEntity<List<MyBean>> response =
           template.exchange("https://example.com",HttpMethod.GET, null, myBean);
       
      次で指定:
      インターフェース RestOperationsexchange 
      パラメーター:
      url - URL
      method - HTTP メソッド (GET、POST など)
      requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)
      responseType - レスポンスを変換する型、または本体なしの場合は Void.class 
      uriVariables - テンプレートで展開する変数
      戻り値:
      エンティティとしてのレスポンス
      例外:
      RestClientException
    • exchange

      public <T> ResponseEntity<T> exchange(StringSE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。指定された ParameterizedTypeReference は、ジェネリクス型情報を渡すために使用されます。
       ParameterizedTypeReference<List<MyBean>> myBean =
           new ParameterizedTypeReference<List<MyBean>>() {};
      
       ResponseEntity<List<MyBean>> response =
           template.exchange("https://example.com",HttpMethod.GET, null, myBean);
       
      次で指定:
      インターフェース RestOperationsexchange 
      パラメーター:
      url - URL
      method - HTTP メソッド (GET、POST など)
      requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)
      responseType - レスポンスを変換する型、または本体なしの場合は Void.class 
      uriVariables - テンプレートで展開する変数
      戻り値:
      エンティティとしてのレスポンス
      例外:
      RestClientException
    • exchange

      public <T> ResponseEntity<T> exchange(URISE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。指定された ParameterizedTypeReference は、ジェネリクス型情報を渡すために使用されます。
       ParameterizedTypeReference<List<MyBean>> myBean =
           new ParameterizedTypeReference<List<MyBean>>() {};
      
       ResponseEntity<List<MyBean>> response =
           template.exchange("https://example.com",HttpMethod.GET, null, myBean);
       
      次で指定:
      インターフェース RestOperationsexchange 
      パラメーター:
      url - URL
      method - HTTP メソッド (GET、POST など)
      requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)
      responseType - レスポンスを変換する型、または本体なしの場合は Void.class 
      戻り値:
      エンティティとしてのレスポンス
      例外:
      RestClientException
    • exchange

      public <T> ResponseEntity<T> exchange(RequestEntity<?> entity, ClassSE<T> responseType) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された RequestEntity で指定されたリクエストを実行し、レスポンスを ResponseEntity として返します。通常、たとえば RequestEntity の静的ビルダーメソッドと組み合わせて使用されます。
       MyRequest body = ...
       RequestEntity request = RequestEntity
           .post(URI.create("https://example.com/foo"))
           .accept(MediaType.APPLICATION_JSON)
           .body(body);
       ResponseEntity<MyResponse> response = template.exchange(request, MyResponse.class);
       
      次で指定:
      インターフェース RestOperationsexchange 
      パラメーター:
      entity - リクエストに書き込むエンティティ
      responseType - レスポンスを変換する型、または本体なしの場合は Void.class 
      戻り値:
      エンティティとしてのレスポンス
      例外:
      RestClientException
    • exchange

      public <T> ResponseEntity<T> exchange(RequestEntity<?> entity, ParameterizedTypeReference<T> responseType) throws RestClientException
      インターフェースからコピーされた説明: RestOperations
      指定された RequestEntity で指定されたリクエストを実行し、レスポンスを ResponseEntity として返します。指定された ParameterizedTypeReference は、一般的な型情報を渡すために使用されます。
       MyRequest body = ...
       RequestEntity request = RequestEntity
           .post(URI.create("https://example.com/foo"))
           .accept(MediaType.APPLICATION_JSON)
           .body(body);
       ParameterizedTypeReference<List<MyResponse>> myBean =
           new ParameterizedTypeReference<List<MyResponse>>() {};
       ResponseEntity<List<MyResponse>> response = template.exchange(request, myBean);
       
      次で指定:
      インターフェース RestOperationsexchange 
      パラメーター:
      entity - リクエストに書き込むエンティティ
      responseType - レスポンスを変換する型、または本体なしの場合は Void.class 
      戻り値:
      エンティティとしてのレスポンス
      例外:
      RestClientException
    • execute

      @Nullable public <T> T execute(StringSE uriTemplate, HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor, ObjectSE... uriVariables) throws RestClientException
      指定された URI テンプレートに対して HTTP メソッドを実行し、RequestCallback を使用してリクエストを準備し、ResponseExtractor を使用してレスポンスを読み取ります。

      URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。

      RequestCallback または ResponseExtractor のみを提供し、両方ではない場合は、次の使用を検討してください。

      次で指定:
      インターフェース RestOperationsexecute 
      パラメーター:
      uriTemplate - URI テンプレート
      method - HTTP メソッド (GET、POST など)
      requestCallback - リクエストを準備するオブジェクト
      responseExtractor - レスポンスから戻り値を抽出するオブジェクト
      uriVariables - テンプレートで展開する変数
      戻り値:
      ResponseExtractor によって返される任意のオブジェクト
      例外:
      RestClientException
    • execute

      @Nullable public <T> T execute(StringSE uriTemplate, HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor, MapSE<StringSE,?> uriVariables) throws RestClientException
      指定された URI テンプレートに対して HTTP メソッドを実行し、RequestCallback を使用してリクエストを準備し、ResponseExtractor を使用してレスポンスを読み取ります。

      URI テンプレート変数は、指定された URI 変数マップを使用して展開されます。

      RequestCallback または ResponseExtractor のみを提供し、両方ではない場合は、次の使用を検討してください。

      次で指定:
      インターフェース RestOperationsexecute 
      パラメーター:
      uriTemplate - URI テンプレート
      method - HTTP メソッド (GET、POST など)
      requestCallback - リクエストを準備するオブジェクト
      responseExtractor - レスポンスから戻り値を抽出するオブジェクト
      uriVariables - テンプレートで展開する変数
      戻り値:
      ResponseExtractor によって返される任意のオブジェクト
      例外:
      RestClientException
    • execute

      @Nullable public <T> T execute(URISE url, HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor) throws RestClientException
      指定された URL に対して HTTP メソッドを実行し、RequestCallback を使用してリクエストを準備し、ResponseExtractor を使用してレスポンスを読み取ります。

      RequestCallback または ResponseExtractor のみを提供し、両方ではない場合は、次の使用を検討してください。

      次で指定:
      インターフェース RestOperationsexecute 
      パラメーター:
      url - URL
      method - HTTP メソッド (GET、POST など)
      requestCallback - リクエストを準備するオブジェクト
      responseExtractor - レスポンスから戻り値を抽出するオブジェクト
      戻り値:
      ResponseExtractor によって返される任意のオブジェクト
      例外:
      RestClientException
    • doExecute

      @Nullable @DeprecatedSE protected <T> T doExecute(URISE url, @Nullable HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor) throws RestClientException
      使用すべきではありません。
      指定された URI で指定されたメソッドを実行します。

      ClientHttpRequestRequestCallback を使用して処理されます。ResponseExtractor を使用したレスポンス。

      パラメーター:
      url - 接続する完全に展開された URL
      method - 実行する HTTP メソッド (GET、POST など)
      requestCallback - リクエストを準備するオブジェクト (null にすることができます)
      responseExtractor - レスポンスから戻り値を抽出するオブジェクト (null にすることができます)
      戻り値:
      ResponseExtractor によって返される任意のオブジェクト
      例外:
      RestClientException
    • doExecute

      @Nullable protected <T> T doExecute(URISE url, @Nullable StringSE uriTemplate, @Nullable HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor) throws RestClientException
      指定された URI で指定されたメソッドを実行します。

      ClientHttpRequestRequestCallback を使用して処理されます。ResponseExtractor を使用したレスポンス。

      パラメーター:
      url - 接続する完全に展開された URL
      uriTemplate - 拡張 URL の作成に使用された URI テンプレート
      method - 実行する HTTP メソッド (GET、POST など)
      requestCallback - リクエストを準備するオブジェクト (null にすることができます)
      responseExtractor - レスポンスから戻り値を抽出するオブジェクト (null にすることができます)
      戻り値:
      ResponseExtractor によって返される任意のオブジェクト
      例外:
      RestClientException
      導入:
      6.0
    • handleResponse

      protected void handleResponse(URISE url, HttpMethod method, ClientHttpResponse response) throws IOExceptionSE
      指定されたレスポンスを処理し、適切なロギングを実行し、必要に応じて ResponseErrorHandler を呼び出します。

      サブクラスでオーバーライドできます。

      パラメーター:
      url - 接続する完全に展開された URL
      method - 実行する HTTP メソッド (GET、POST など)
      response - 結果の ClientHttpResponse
      例外:
      IOExceptionSE - ResponseErrorHandler から伝播された場合
      導入:
      4.1.6
      関連事項:
    • acceptHeaderRequestCallback

      public <T> RequestCallback acceptHeaderRequestCallback(ClassSE<T> responseType)
      指定されたレスポンス型に基づいてリクエスト Accept ヘッダーを設定する RequestCallback を返し、構成されたメッセージコンバーターと照合します。
    • httpEntityCallback

      public <T> RequestCallback httpEntityCallback(@Nullable ObjectSE requestBody)
      指定されたオブジェクトをリクエストストリームに書き込む RequestCallback 実装を返します。
    • httpEntityCallback

      public <T> RequestCallback httpEntityCallback(@Nullable ObjectSE requestBody, TypeSE responseType)
      次の RequestCallback 実装を返します。
      1. 指定されたレスポンス型に基づいて、構成されたメッセージコンバーターに対してクロスチェックされたリクエスト Accept ヘッダーを設定します。
      2. 指定されたオブジェクトをリクエストストリームに書き込みます。
    • responseEntityExtractor

      public <T> ResponseExtractor<ResponseEntity<T>> responseEntityExtractor(TypeSE responseType)
      ResponseEntity を準備する ResponseExtractor を返します。
    • headersExtractor

      protected ResponseExtractor<HttpHeaders> headersExtractor()
      HttpHeaders のレスポンス抽出プログラムを返します。