详解SpringCloud微服务之Rest

作者:ProChick 时间:2023-10-20 00:49:36 

一、什么是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

标签:SpringCloud,微服务,Rest
0
投稿

猜你喜欢

  • Spring Boot 日志配置方法(超详细)

    2021-09-06 19:08:52
  • 最简单易懂的java数组排序方法整理

    2023-01-03 18:56:41
  • Android树形控件绘制方法

    2022-09-05 01:50:55
  • Mybatis控制台打印Sql语句的实现代码

    2021-10-08 22:06:28
  • Spring使用@Autowired为抽象父类注入依赖代码实例

    2023-02-01 09:30:35
  • kotlin Context使用详解

    2021-09-12 02:54:29
  • 详解WMI RPC 服务器不可用的解决方案

    2023-09-14 14:51:54
  • 详解android 中animation-list 动画的应用

    2022-09-13 18:28:31
  • Mybatis中and和循环or混用操作(or转换成in)

    2023-09-19 11:08:34
  • C#利用XML创建Excel文档的实现方法

    2022-12-21 07:15:53
  • Java实现的日历功能完整示例

    2021-10-12 18:30:21
  • 利用flutter实现炫酷的list

    2022-08-02 01:15:01
  • SpringBoot过滤器的使用

    2023-08-28 21:28:56
  • C# 格式化字符首字母大写的方法

    2022-04-28 00:05:12
  • Android实现花瓣飘落效果的步骤

    2021-11-23 17:16:44
  • Android Oss上传图片的使用示例

    2021-06-23 14:09:35
  • Spring如何使用注解的方式创建bean

    2022-01-29 03:45:49
  • 关于HashMap相同key累加value的问题

    2022-02-13 13:32:18
  • 详解Android App中ViewPager使用PagerAdapter的方法

    2021-12-06 06:11:52
  • Java简单验证身份证功能示例

    2023-08-15 23:36:32
  • asp之家 软件编程 m.aspxhome.com