JAVA Feign

Posted 口头猿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA Feign相关的知识,希望对你有一定的参考价值。

Feign 是一种声明式、模板化的 HTTP客户端 

在Spring Cloud中使用 Feign, 我们可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求。比如:

  @Autowired
  private AdvertGropRemoteService service; // 远程服务

  public AdvertGroupVO foo(Integer groupId) {
      return service.findByGroupId(groupId); // 通过HTTP调用远程服务
  }

开发者通过service.findByGroupId()就能完成 发送HTTP请求 解码HTTP返回结果封装成对象 的过程。

 

  @FeignClient(name = "ea")  // 用于通知Feign组件对该接口进行代理(不需要编写接口实现),使用者可直接通过@Autowired注入

  public interface AdvertGroupRemoteService {

    @RequestMapping(value = "/group/{groupId}", method = RequestMethod.GET)  // 表示在调用该方法时需要向/group/{groupId}发送GET请求。

    AdvertGroupVO findByGroupId(@PathVariable("groupId") Integer adGroupId) // 与SpringMVC中对应注解含义相同

    @RequestMapping(value = "/group/{groupId}", method = RequestMethod.PUT)

    void update(@PathVariable("groupId") Integer groupId, @RequestParam("groupName") String groupName)

 

以上是关于JAVA Feign的主要内容,如果未能解决你的问题,请参考以下文章

Java 微服务之 SpringCloud快速入门day02 Feign

Java 微服务之 SpringCloud快速入门day02 Feign

Java B2B2C多用户商城 springcloud架构-docker-feign配置

java B2B2C 源码 多级分销Springboot多租户电子商城系统-docker-feign配置

Feign远程调用

Spring全家桶-Feign远程调用