详解SpringCloud微服务之Rest
作者:ProChick 发布时间:2023-10-20 00:49:36
标签:SpringCloud,微服务,Rest
一、什么是RestTemplate?
RestTemplate 是一个HTTP客户端,在Spring Cloud的服务调用方使用它我们可以方便的调用HTTP接口,支持GET、POST、PUT、DELETE等方法。
二、四种请求方式
首先注入Bean对象
@Configuration
public class MyConfig {
@Bean
public RestTemplate restTemplate(){
return new RestTemplate();
}
}
2.1 GET请求
getForObject
@GetMapping("get/{id}")
public CommonResult getUser(@PathVariable Long id) {
CommonResult commonResult
= restTemplate.getForObject(Url + "/user/{1}", CommonResult.class, id);
return commonResult
}
getForEntity
@GetMapping("/get/{sex}")
public CommonResult getUser(@PathVariable String sex) {
ResponseEntity<CommonResult> entity
= restTemplate.getForEntity(Url + "/user/{女}", CommonResult.class, sex);
if (entity.getStatusCode().is2xxSuccessful()) {
return entity.getBody();
} else {
return new CommonResult("操作失败", 500);
}
}
2.2 POST请求
postForObject
@PostMapping("/add")
public CommonResult add(@RequestBody User user) {
CommonResult commonResult
= restTemplate.postForObject(Url + "/user/add", user, CommonResult.class);
return commonResult;
}
postForEntity
@PostMapping("/add")
public CommonResult add(@RequestBody User user) {
CommonResult commonResult
= restTemplate.postForEntity(Url + "/user/add", user, CommonResult.class)
return commonResult.getBody();
}
2.3 PUT请求
@PutMapping("/update")
public CommonResult update(@RequestBody User user) {
restTemplate.put(Url + "/user/update", user);
return new CommonResult("操作成功",200);
}
2.4 DELETE请求
@DeleteMapping("/delete/{id}")
public CommonResult delete(@PathVariable Long id) {
restTemplate.delete(Url + "/user/delete/" + id, null);
return new CommonResult("操作成功",200);
}
来源:https://blog.csdn.net/qq_45747519/article/details/114580662
0
投稿
猜你喜欢
- Consumer消费者Demo示例<?xml version="1.0" encoding="UTF-8
- 摘要在生产环境下,我们需要关闭swagger配置,避免暴露接口的这种危险行为。方法禁用方法1:使用注解 @Value() 推荐使用packa
- java 数据类型:在Java中,数据类型分为两大种:基本数据类型(值类型)和包装类型(引用数据类型)。基本数据类型不是对象,不能调用toS
- 前言1、下面是一个效果展示;2、先抱怨一下,在博客上面的抄袭真的非常严重,为了实现一个图片滑动验证,我搜索了挺久的资料,不过内容翻来覆去就是
- groovy是一种动态脚本语言,适用于一些可变、和规则配置性的需求,目前Spring提供ScriptSource接口,支持两种类型,一种是R
- 一、前言我们在做Winform窗体程序开发的时候,会经常遇到窗体之间相互传值。假设有下面的一个场景:一个主窗体和一个子窗体,点击主窗体上面的
- java抠图片文字或签名运行原理第一步 遍历像素点BufferedImage image = ImageIO.read(new File(i
- 本文实例讲述了Java中public static void main(String args[])的来龙去脉。分享给大家供大家参考,具体如
- 前言前面说到在我们应对高并发的场景,请求量过于大的情况下给我们服务器的压力很多,造成缓存穿透、击穿、雪崩,那么我们采用布隆过滤器,有兴趣的小
- EntityWrapper的in用法EntityWrapper<UserLife> wrapper = new EntityWr
- SpringBoot 中配置redis作为session 缓存器。 让shiro引用本文是建立在你是使用这shiro基础之上的补充内容第一种
- 请求参数解析客户端请求在handlerMapping中找到对应handler后,将会继续执行DispatchServlet的doPatch(
- 前言JAVA缓存实现方案有很多,最基本的自己使用Map去构建缓存,或者使用memcached或Redis,但是上述两种缓存框架都要搭建服务器
- 一、注解(annotations)列表@SpringBootApplication:包含了@ComponentScan、@Configura
- 学习过java基础,最近趁着大量课余时间想学习Android开发。百度很多资料Android studio,由Google开发的开发工具,那
- 写在前面:可能是临近期末了,各种课程设计接踵而来,最近在csdn上看到2个一样问答,那就是编写一个基于socket的聊天程序,正好最近刚用s
- idea统计代码行数可以用到插件:Statistic。步骤:File→Settings进入Plugins点击Marketplace搜索Sta
- 引言从本篇文章开始,我们将介绍 Java AQS 的实现方式,本文先介绍 AQS 的内部数据是如何组织的,后面的文章中再分别介绍 AQS 的
- 近日,开发者头条上分享了一篇“小米java第二轮面经”,有很多的java程序员表示非常有兴趣。下面就和各位分享小米java第二轮面经:0、谈
- 最近公司需要做一个告警页面的功能,需要分页,查了很多资料发现PageHelper比较合适故写一篇从零开始的PageHelper使用的教程,也