当前位置: 首页 > news >正文

002-SpringCloud-OpenFeign(远程调用)

SpringCloud-OpenFeign

            • 1.引入依赖
            • 2.编写一个远程调用接口
            • 3.测试

1.引入依赖
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2021.1</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

注意:从Spring Cloud Hoxton.M2 RELEASED版本开始,Spring Cloud Feign不再使用Ribbon作为负载均衡器,而是使用spring-cloud-loadbalancer

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-loadbalancer</artifactId>
</dependency>

注意:如果项目中仍然包含Ribbon依赖,可能会导致spring-cloud-loadbalancer无法正常工作。因此,在引入spring-cloud-loadbalancer的同时,需要排除Ribbon依赖。

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
    <exclusions>
        <exclusion>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
        </exclusion>
    </exclusions>
</dependency>
2.编写一个远程调用接口

场景:服务 cswfw-member 调用 服务 cswfw-coupon

  • 第一步:在服务 cswfw-coupon 写一个测试方法
    在这里插入图片描述
  • 第二步:在服务 cswfw-member 里面定义一个远程调用服务的接口
    在这里插入图片描述
  • 第三步:给接口 CouponFeignService 添加注解,告诉注册中心找哪个远程服务
    ==@FeignClient(“cswfw-coupon”) (cswfw-coupon:远程服务在注册中心的名称) ==
    在这里插入图片描述
  • 第四步:声明一下远程服务要调用的方法(这里直接把远程方法的方法名复制过来)
  • 注意:这里的地址是完整的地址
    在这里插入图片描述
  • 第五步:在启动类上加上开启远程调用的注解
    @EnableFeignClients(basePackages = “com.xiaogang.member.feign”)
    在这里插入图片描述
    注意:这里的 basePackages 就是刚才在上面第二步创建的接口路径,方便启动服务的时候扫描到注解@FeignClient
3.测试
  • 启动服务,可以在注册中心查看是否成功注册
    在这里插入图片描述
  • 访问地址:http://localhost:8082/member/member/coupons
    在这里插入图片描述
http://www.dtcms.com/a/56323.html

相关文章:

  • OpenCV计算摄影学(17)两个图像之间执行无缝克隆操作函数 seamlessClone()
  • 设计模式-结构型模式-适配器模式
  • 【SpringMVC】深入解析@ RequestMapping 注解的概念及使用和 MVC 介绍
  • 利用可变参数模板,可打印任意参数和参数值。(C++很好的调式函数)
  • Deepseek可以通过多种方式帮助CAD加速工作
  • Docker和DockerCompose基础教程及安装教程
  • dify中使用NL2SQL
  • Java直通车系列15【Spring MVC】(ModelAndView 使用)
  • 计算机视觉|从0到1揭秘Diffusion:图像生成领域的新革命
  • SpreadVue实现内置excel在线编辑并保存为后端可以接受的json格式
  • Centos操作系统大全(附ISO镜像下载)
  • 电商项目-秒杀系统(五) 秒杀下单接口限流
  • 使用Modelsim手动仿真
  • 题目 3217 ⭐成绩统计⭐【滑动窗口 + 二分搜索】蓝桥杯2024年第十五届省赛
  • 大白话 CSS 中transform属性的常见变换类型(平移、旋转、缩放等)及使用场景
  • 管理 SELinux 安全性
  • 正则表达式详解
  • android13打基础: timepicker控件
  • Vue 3 ref(new Map()) 无法触发watch
  • 力扣35.搜索插入位置-二分查找
  • Linux网络配置(超详细)
  • 「Java EE开发指南」如何用MyEclipse构建一个Web项目?(二)
  • Go权限管理库Casbin和身份验证库jwt-go初试
  • 【2025】Electron + React 架构筑基——从零到一的跨平台开发
  • 电子学会—2024年12月青少年软件编程(图形化)四级等级考试真题——趣味点阵屏
  • 当中国“智算心跳”与全球共振:九章云极DataCanvas首秀MWC 2025
  • 快速掌握EasyOCR应用实战指南
  • Qt常用控件之表格QTableWidget
  • openharmony 软总线-设备发现流程
  • OSPF网络类型:NBMA与P2MP