好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

springBoot使用openfeign来远程调用的实现

使用openfeign来远程调用

1、客户端调用方 导入依赖

?

1

org.springframework.cloud spring-cloud-starter-openfeign

2、启动类 @EnableFeignClients

3、

4、

springBoot使用openfeign

1、首先需要把两个不同模块都加入到nacos注册中心中

2、引入openfeign 依赖

?

1

2

3

4

< 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依赖

?

1

2

3

4

< dependency >

    < groupId >org.springframework.cloud</ groupId >

    < artifactId >spring-cloud-loadbalancer</ artifactId >

</ dependency >

在nacos中排除ribbon依赖

?

1

2

3

4

5

6

< exclusions >

    < exclusion >

        < groupId >org.springframework.cloud</ groupId >

        < artifactId >spring-cloud-starter-netflix-ribbon</ artifactId >

    </ exclusion >

</ exclusions >

不然loadbalancer无效

4、定义一个feign接口,添加@FeignClient([xxxx])依赖,xxxx是被调用服务的服务名,声明之后即可调用此接口

?

1

2

  @RequestMapping ( "/xxxx/xxxx/xxxx/list" ) //这里是被调用服务接口的全路径

    public R RemoteList();

5、在项目启动类添加@EnableFeignClients(basePackages = {[com.xxxx.xxxx.xxxx]})注解

basePackages 是feign接口路径

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

原文链接:https://blog.csdn.net/qq_31411349/article/details/88619581

查看更多关于springBoot使用openfeign来远程调用的实现的详细内容...

  阅读:22次