Feign

概述

直接使用RestTemplate存在问题

  • 在请求接口时, 路径仍存在问题, 只解决了服务名称, 没有解决服务后, 功能路径问题, 因为有可能是别人开发的, 你不知道后面功能路径是什么

什么是Feign

  • Feign是一个声明式的WebService客户端
  • Feign旨在使编写Java HTTP客户端变得更容易
  • Feign在RestTemplate基础上做了进一步封装,由他来帮助我们定义和实现依赖服务接口的定义
  • Feign可以把请求进行隐藏,你不用再自己拼接URL,拼接参数等等操作,一切都交给Feign去做
  • 调用时, 使用的负载均衡, 是当前客户端配置的负载均衡规则

Feign使用步骤

在客户端引入依赖

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

在启动类上面加上注解@EnableFeignClients

🐤创建服务FeignClient

  • 创建一个service文件夹,在该文件下创建一个接口

  • 在接口上面加上@FeignClient()注解,参数就是你的微服务名字

@FeignClient(name = "client-goods")
public interface GoodsFeignClient {
    @RequestMapping("/getGoods.do")
    ResponseResult getGoods();
}

在控制器当中进行调用

posted @ 2020-08-18 14:24  BNTang  阅读(122)  评论(0编辑  收藏  举报