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

相关推荐
计算机学姐2 小时前
基于SpringBoot的演出购票系统【2026最新】
java·vue.js·spring boot·后端·spring·tomcat·intellij-idea
木风小助理2 小时前
C# 高效编程:Any () 与 Count () 正确选择
java·solr·lucene
程序员侠客行3 小时前
Mybatis二级缓存实现详解
java·数据库·后端·架构·mybatis
源码获取_wx:Fegn08953 小时前
基于springboot + vue健康茶饮销售管理系统
java·vue.js·spring boot·后端·spring
小帅学编程3 小时前
Spring(侧重注解开发)
java·学习·spring
早点睡觉好了3 小时前
JAVA中基本类型和包装类型的区别
java·开发语言
雅俗共赏zyyyyyy3 小时前
SpringBoot集成配置文件加解密
java·spring boot·后端
计算机学姐3 小时前
基于SpringBoot的送货上门系统【2026最新】
java·vue.js·spring boot·后端·mysql·spring·tomcat
码农水水3 小时前
国家电网Java面试被问:二叉树的前序、中序、后序遍历
java·开发语言·面试