Feign-基于Feign远程调用

2023-12-13 13:31:06

目录

一、Feign、RestTemplate对比

二、Feign使用步骤

????????2.1. 引入依赖

????????2.2. 在service的启动类添加注解,开启Fergn的功能

????????2.3. 编写Feign客户端


一、Feign、RestTemplate对比


利用RestTemplate发起远程调用的代码:

String url = "http://userservice/user/" + order.getUserId();

User user = restTemplate.getForObject(url,User.class);

存在下面的问题:

  • 代码可读性差,编程体验不统一
  • 参数复杂URL难以维护

Feign是一个声明式的http客户端,官方地址: https://github.com/OpenFeign/feign其作用就是帮助我们优雅的实现http请求的发送,解决上面提到的问题。

二、Feign使用步骤

????????2.1. 引入依赖

<dependency>

????????<groupId>org.springframework.cloud</groupId>

????????<artifactId>spring-cloud-starter-openfeign</artifactId>

</dependency>?

????????2.2. 在service的启动类添加注解,开启Fergn的功能

????????2.3. 编写Feign客户端

主要是基于SpringMVC的注解来声明远程调用的信息,比如:?

  • 服务名称: userservice
  • 请求方式:GET
  • 请求路径:/user/{id}
  • 请求参数:Longid
  • 返回值类型:User?
?????????2.4. 效果

?三、总结

Feign的使用步骤?

  • 引入依赖
  • 添加@EnableFeignClients注解
  • 编写FeignClient接口
  • 使用FeignClient中定义的方法代替RestTemplate?

文章来源:https://blog.csdn.net/m0_60769905/article/details/134967652
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。