RestTemplate

一、概述

RestTemplate是从 Spring3.0 开始支持的一个 HTTP 请求工具,它提供了常见的REST请求方案的模版,例如 GET 请求、POST 请求、PUT 请求、DELETE 请求以及一些通用的请求执行方法 exchange 以及 execute。

RestTemplate 继承自 InterceptingHttpAccessor 并且实现了 RestOperations 接口,其中 RestOperations 接口定义了基本的 RESTful 操作,这些操作在 RestTemplate 中都得到了实现。

传统情况下在java代码里访问Restful服务,一般使用Apache的HttpClient。不过此种方法使用起来太繁琐。

Spring提供了一种简单便捷的模板类RestTemplate来进行操作:

java 复制代码
@Component
public class RestTemplateConfig {

    @Bean
    public RestTemplate restTemplate(){
        return new RestTemplate();
    }
}
java 复制代码
@RestController
public class RestConsumer {

    public static final String PAYMENT_URL = "http://localhost:8081";

    @Autowired
    private RestTemplate restTemplate;

    @GetMapping("/consumer/{id}")
    public String getForObject(@PathVariable("id") Integer id){
        return restTemplate.getForObject(PAYMENT_URL+"/provider/{id}",String.class, id);
    }
}
java 复制代码
@RestController
public class RestProvider {

    @GetMapping("/provider/{id}")
    public String getForObject(@PathVariable("id") Integer id){

        return "provicer-"+id;
    }
}

二、经典博客详解

RestTemplate详解https://wenpingzhe.blog.csdn.net/article/details/121196840

相关推荐
代码AI弗森14 小时前
一文理清楚“算力申请 / 成本测算 / 并发评估”
java·服务器·数据库
Old Uncle Tom14 小时前
OpenClaw 记忆系统 -- 记忆预加载
java·数据结构·算法·agent
小小小米粒14 小时前
Collection单列集合、Map(Key - Value)双列集合,多继承实现。
java·开发语言·windows
摇滚侠15 小时前
expdp 查看帮助
java·数据库·oracle
:12115 小时前
java基础
java·开发语言
曹牧16 小时前
Spring:@RequestMapping注解,匹配的顺序与上下文无关
java·后端·spring
daixin884816 小时前
cursor无法正常使用gpt5.5等模型解决方案
java·redis·cursor
韦禾水17 小时前
记录一次项目部署到tomcat的异常
java·tomcat
曦月合一17 小时前
树莓派安装jdk、tomcat、vnc、谷歌浏览器开机自启等环境配置
java·tomcat·树莓派
此剑之势丶愈斩愈烈18 小时前
openssl 自建证书
java