微服务调用传string值_springCloud微服务项目 构建公共的feign调用
在微服務項目中加入有一個微服務的接口,很多其他的微服務都需要調用它,那么我們可以寫在公共的項目中,而不需要每個微服務都建立一個相應 的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調用了。
總結
以上是生活随笔為你收集整理的微服务调用传string值_springCloud微服务项目 构建公共的feign调用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 矩阵一维卷积c++_深度神经网络卷积层计
- 下一篇: 小程序云开发搜索功能的实现正则_几行代码