springBoot使用openfeign来远程调用的实现
作者:qq_31411349
这篇文章主要介绍了springBoot使用openfeign来远程调用的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
使用openfeign来远程调用
1、客户端调用方 导入依赖
org.springframework.cloud spring-cloud-starter-openfeign
2、启动类 @EnableFeignClients
3、
4、
springBoot使用openfeign
1、首先需要把两个不同模块都加入到nacos注册中心中
2、引入openfeign 依赖
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency>
3、由于SpringCloud Feign在Hoxton.M2 RELEASED版本之后不再使用Ribbon而是使用spring-cloud-loadbalancer,所以不引入spring-cloud-loadbalancer会报错
解决方法
加入spring-cloud-loadbalancer依赖
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-loadbalancer</artifactId> </dependency>
在nacos中排除ribbon依赖
<exclusions> <exclusion> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-ribbon</artifactId> </exclusion> </exclusions>
不然loadbalancer无效
4、定义一个feign接口,添加@FeignClient(“xxxx”)依赖,xxxx是被调用服务的服务名,声明之后即可调用此接口
@RequestMapping("/xxxx/xxxx/xxxx/list")//这里是被调用服务接口的全路径 public R RemoteList();
5、在项目启动类添加@EnableFeignClients(basePackages = {“com.xxxx.xxxx.xxxx”})注解
basePackages 是feign接口路径
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。