16.4.1 了解 RestTemplate 的操作

RestTemplate 定义了 36 个与 REST 资源交互的方法,其中的大多数都对应于 HTTP 的方法。但是,在本章中我没有足够的篇幅涵盖所有的 36 个方法。其实,这里面只有 11 个独立的方法,其中有十个有三种重载形式,而第十一个则重载了六次,这样一共形成了 36 个方法。表 16.2 描述了 RestTemplate 所提供的 11 个独立方法。除了 TRACE 以外,RestTemplate 涵盖了所有的 HTTP 动作。除此之外,execute() 和 exchange() 提供了较低层次的通用方法来使用任意的 HTTP 方法。

表 16.2 中的大多数操作都以三种方法的形式进行了重载:

  • 一个使用 java.net.URI 作为 URL 格式,不支持参数化 URL;

  • 一个使用 String 作为 URL 格式,并使用 Map 指明 URL 参数;

  • 一个使用 String 作为 URL 格式,并使用可变参数列表指明 URL 参数。

明确了 RestTemplate 所提供的 11 个操作以及各个变种如何工作之后,你就能以自己的方式编写使用 REST 资源的客户端了。我们通过对四个主要 HTTP 方法的支持(也就是 GET、PUT、DELETE 和 POST) 来研究 RestTemplate 的操作。我们从 GET 方法的 getForObject() 和 getForEntity() 开始。

Last updated