我是个小菜鸡,写了一个系列,面向初学者,有什么错误忘大佬们及时指出加以改正,这个系列主要有eureka、ribbon、feign、hystrix、gateway,简单的搭建与使用

前两篇
eureka:https://blog.csdn.net/weixin_42699857/article/details/103697462
ribbon:https://blog.csdn.net/weixin_42699857/article/details/103697524
看完ribbon接着看这个

Feign

ribbon调用远程微服务,写法是这样

springcloud之Feign

那么如果我们大量调用接口,或者拼接url,那写法还是不方便,so,我们讲一下一个新的组件 -feign

一、什么是feign

Netflix公司开发的声明式、模板化http客户端,模板来源于websocket,可以帮助我们更加便捷优雅的调用http api,springcloud里面使用feign非常简单,创建接口,添加注解,完成,那么在springcloud中feign整合了ribbon、eureka,并且支持springmvc注解。

二、使用

1、 导入依赖

orderServer

我们先看一下controller里面的接口地址

springcloud之Feign

那么我们现在orderserver里面新建一个包,再建一个client类,写上这个接口

2、 配置调用接口

springcloud之Feign

Feign支持springmvc的注解,我们的feignClient里面就写着controller调用的服务名称,RequestMapping里面写controller绿色框的地址,我给了一个无参的方法,如果有参数的话,跟正常接参数的注解一样

3、 **feign

那么Feign整合了ribbon

所以我们的写法就是这样

springcloud之Feign

4、 通过自定义接口调用远程微服务
springcloud之Feign

现在我们重新整理一***掉之前写的所有

springcloud之Feign
现在我们重新启动以后继续按照这个路径访问
springcloud之Feign

现在的代码就优雅了许多

当然,出现我现在讲的这些,我们还会出现很多情况,比如我们需要日志什么的,这个有兴趣的可以自己查一下,也很简单

springcloud之Feign

至于feign跟ribbon的区别,有兴趣的可以去看一下源码

相关文章: