在服务的调用过程中,使用到了一个组件,叫做 RestTemplate,RestTemplate 是由 Spring 提供的一个 HTTP 请求工具。
其实开发者也可以不使用 RestTemplate ,使用 Java 自带的 HttpUrlConnection 或者经典的网络访问框架 HttpClient 也可以完成,只是在 Spring 项目中,使用 RestTemplate 显然更方便一些。
在传统的项目架构中,因为不涉及到服务之间的调用,大家对 RestTemplate 的使用可能比较少。
RestTemplate 简介
RestTemplate 是从 Spring3.0 开始支持的一个 HTTP 请求工具,它提供了常见的REST请求方案的模版,
例如 GET 请求、POST 请求、PUT 请求、DELETE 请求以及一些通用的请求执行方法 exchange 以及 execute。
RestTemplate 继承自 InterceptingHttpAccessor 并且实现了 RestOperations 接口,其中 RestOperations 接口定义了基本的 RESTful 操作,这些操作在 RestTemplate 中都得到了实现。
使用方法
get
RestTemplate 发送 GET 请求。在 RestTemplate 中,和 GET 请求相关的方法有如下几个:
restTemplate.getForObject(url地址,返回对象的类型)
例如
restTemplate.getForObject("httP://localhost:8080/user,User.class)
实际使用时有两种方案: