RestTemplate 是从 Spring3.0 开始支持的一个 HTTP 请求工具,它提供了常见的REST请求方案的模版,例如 GET 请求、POST 请求、PUT 请求、DELETE 请求以及一些通用的请求执行方法 exchange 以及 execute。RestTemplate 继承自 InterceptingHttpAccessor 并且实现了 RestOperations 接口,其中 RestOperations 接口定义了基本的 RESTful 操作,这些操作在 RestTemplate 中都得到了实现。
使用
新建 config.ApplicationContextConfig.java
@Configuration
public class ApplicationContextConfig {
@Bean // applicationContext.xml <bean id="" class="">
public RestTemplate restTemplate() {
return new RestTemplate();
}
}
使用
@Resource
private RestTemplate restTemplate;
@GetMapping(value = "/consumer/payment/create")
public CommonResult<Payment> create(Payment payment) {
return restTemplate.postForObject(“http://localhost:8080” + "/payment/create", payment, CommonResult.class);
// return restTemplate.getForObject(“http://localhost:8080” + "/payment/get/" + id, CommonResult.class);
// (url, requestMap, ResponseBean.class) 这三个参数分别代表
// REST请求地址、请求参数、HTTP响应被转换成的对象类型
// 支持的方法很多,不一一列举了
}