Feign主要为了面向接口编程
feign是web service客户端,是接口实现的,而ribbon是通过微服务名字访问通过RestTemplate调用的,如下:


在Feign的实现下,我们只需要创建一个接口并使用注解的方式来配置它(类似于以前Dao接口上标注Mapper注解,现在是一个微服务接口上面标注一个Feign注解即可)
在总的springcloud-api中,编写服务接口
都导入依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-feign</artifactId>
<version>1.4.6.RELEASE</version>
</dependency>


这里将接口写好之后使用@Component注解注入spring容器,然后新建模块springcloud-consumer-dept-feign
这里其实就是springcloud-consumer-dept-80模块复制过去,不一样的是

这里使用接口方式注入,也就是用了spring容器的思想不使用RestTemplate来获取
然后使用@EnableFeignClients注解和@ComponentScan注解去扫描包路径
即可成功访问获得数据
Feign是SpringCloud中的工具,用于简化Web服务客户端编程,通过接口注解配置。与Ribbon不同,Feign使用接口注入Spring容器,无需RestTemplate。只需添加依赖,扫描包路径并启用相关注解,即可实现服务间的高效通信。
1900

被折叠的 条评论
为什么被折叠?



