在微服务项目中加入有一个微服务的接口,很多其他的微服务都需要调用它,那么我们可以写在公共的项目中,而不需要每个微服务都建立一个相应 的feign

1.先在common 公共项目中建一个公共feign调用的接口(注意这儿用的是fallbackFactory,而不是fallback)

2.然后定义一个降级处理的类 (实现FallbackFactory)用来构建公共调用的接口

3.然后在resource目录下创建META-INF/spring.factories

(这是一个springboot默认创建bean的文件)内容是:

org.springframework.boot.autoconfigure.EnableAutoConfiguration=
com.xxx.factory.DataProducerFallbackFactory,
com.xxx.util.IdWorker,
com.xxx.util.LogUtil,
com.xxx.exception.GlobalExceptionHandler

只需要将DataProducerFallbackFactory 加入spring容器中,因为接口已经在DataProducerFallbackFactory 类中new出并使用。

4.在common项目下再自定义一个feign调用的注解

import org.springframework.cloud.openfeign.EnableFeignClients;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;/** * 自定义feign注解 * 添加basePackages路径 * * @author lhm */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@EnableFeignClients
public @interface EnableCommonFeignClients
{
String[] value() default {};
String[] basePackages() default { "http://com.xxx" };//这里添加自己项目的包扫描路径
Class<?>[] basePackageClasses() default {};
Class<?>[] defaultConfiguration() default {};
Class<?>[] clients() default {};
}

5.最后在其他微服务的启动类中添加该自定义注解:

就可以在其他微服务直接使用( Autoware )这个公共的feign调用了。

springcloud feign 服务调用其他服务_springCloud微服务项目 构建公共的feign调用相关推荐

  1. 微服务调用传string值_springCloud微服务项目 构建公共的feign调用

    在微服务项目中加入有一个微服务的接口,很多其他的微服务都需要调用它,那么我们可以写在公共的项目中,而不需要每个微服务都建立一个相应 的feign 1.先在common 公共项目中建一个公共feign调 ...

  2. SpringCloud(第 016 篇)电影微服务,定制Feign,一个Feign功能禁用Hystrix,另一个Feign功能启用Hystrix...

    2019独角兽企业重金招聘Python工程师标准>>> SpringCloud(第 016 篇)电影微服务,定制Feign,一个Feign功能禁用Hystrix,另一个Feign功能 ...

  3. SpringCloud(第 017 篇)电影微服务接入Feign,添加 fallbackFactory 属性来触发请求进行容灾降级...

    2019独角兽企业重金招聘Python工程师标准>>> SpringCloud(第 017 篇)电影微服务接入Feign,添加 fallbackFactory 属性来触发请求进行容灾 ...

  4. 微服务升级优点_SpringCloud微服务架构升级总结

    原标题:SpringCloud微服务架构升级总结 1.1 应用系统的架构历史 1.2 什么是微服务? 起源:微服务的概念源于 2014 年 3 月 Martin Fowler 所写的一篇文章" ...

  5. SpringCloud一、前提概述、相关微服务和微服务架构理论知识、微服务技术栈有哪些、

    ①前提概述.微服务架构springcloud的相关学习. 前提知识+相关说明 1.目前,我们学习到最后的微服务架构SpringCloud,基本上需要熟悉以前的学习内容和知识:springmvc.spr ...

  6. 微服务笔记:第一章_微服务简介|Eureka注册中心|Nacos注册中心|Nacos配置管理|Feign|Gateway服务网关

    微服务笔记:第一章_微服务简介|Eureka注册中心|Nacos注册中心|Nacos配置管理|Feign|Gateway服务网关 1. 微服务简介 1.1 服务架构演变 1.2 SpringCloud ...

  7. hystrix 页面_SpringCloud微服务架构篇5:微服务熔断机制-Hystrix

    由于网络原因或者自身的原因,微服务并不能保证服务百分之百可用.如果单个服务出现问题,则调用该服务时会出现延迟甚至调用失败的情况:若调用失败,用户则会重新刷新页面并尝试再次调用,再加上其他服务的调用,从 ...

  8. 微服务_SpringCloud微服务架构实战:高并发微服务架构设计

    高并发微服务架构设计 作为一个 IT 从业人员,我们经常会碰到类似于下面的一些问题: 单个项目巨大而沉重,难以维护. 系统稳定性得不到更有效的保证. 怎样才能持续地提升系统的性能. 怎样才能快速地响应 ...

  9. 微服务get请求条用_SpringCloud微服务(07):Zipkin组件,实现请求链路追踪

    一.链路追踪简介 1.Sleuth组件简介 Sleuth是SpringCloud微服务系统中的一个组件,实现了链路追踪解决方案.可以定位一个请求到底请求了哪些具体的服务.在复杂的微服务系统中,如果请求 ...

最新文章

  1. UVA 311 Packets
  2. SQL Server 2012 安装杂谈
  3. CI框架发送邮件(带附件)
  4. 数据库基础 数据库设计三大范式
  5. es文件浏览器怎么用_谷歌出品的文件管理APP,比ES文件浏览器更简约
  6. 关于Java IO流学习总结
  7. C++--第11课 - 类的静态成员
  8. linux中vi后如何退出命令,linux用VI编辑后保存退出命令是什么啊?
  9. 工行聚合支付二维码扫码付对接流程及代码实现
  10. 使用echars制作家谱图
  11. 光谱分析软件_利用Tracker软件分析车前草提取液的吸收光谱特征
  12. Mongoose操作mongoDB的详细步骤
  13. 在WinForm中回车键(enter)和Esc键的设置
  14. 计算相似度的LLR算法
  15. Linux——shell
  16. Excel中的VBA学习--简易上手VB的程序
  17. 2023中兴软件类笔试
  18. 使用spring boot实现一个简单的项目——⽤户管理功能
  19. crontab 详解
  20. 操作系统开发--Hello OS-开始操作系统开发

热门文章

  1. J360-cloud SpringCloud系列二:服务发现Discovery Service
  2. 使用XML与远程服务器进行交互
  3. 基于JSP实现医院病历管理系统
  4. 将Numpy加速700倍——CuPy
  5. windows 正在查找bash.exe
  6. 基于Grafana+SimpleJson的灵活报表解决方案
  7. 荣发护肤护甲增强配方 Hair, Skin and Nails Plus 100 tablets
  8. WPF 仿IPhone滑块开关 样式 - CheckBox
  9. pandas 2 选择数据
  10. 服务器与本地时间的倒计时