首页 > 其他分享 >openfeign及熔断的使用以及传参方式的误区

openfeign及熔断的使用以及传参方式的误区

时间:2024-07-25 10:28:56浏览次数:14  
标签:传参 PathVariable openfeign public 熔断 Integer id cloud

pom文件

 <!-- 熔断依赖 -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
        </dependency>

        <!-- 引入openfeign依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>

 yaml文件

# Feign熔断配置
feign:
  hystrix:
    enabled: true  //一级目录

使用误区 

        1、PathVariable传参方式

                controller层
 @GetMapping("/listAll/{id}")
    public List<Map> listById(
            @PathVariable(name = "id") Integer id
   )
                 feignClient层( @PathVariable(name = "id")路径传参一定要加这个 否则报错)
@FeignClient("ruoyi-cms")
public interface CmsClient {


    @GetMapping("/goods/listAll/{id}")
    List<Map> list(
         @PathVariable(name = "id") Integer id 
    ) ;
     
}

                2、RequestParam传参

                        controller层(当controller层没有指定传参方式时默认是RequestParam)

  @PostMapping("/listAll")
    public List<Map> listById(
            Integer id
   )

                      feignClient层 (当feignClient 层没有 @ 指定传参方式时  默认为   @RequestBody  所以要手动添加@RequestParam("id")

@FeignClient("ruoyi-cms")
public interface CmsClient {

    @GetMapping("/goods/listAll")
    List<Map> list(
          Integer id  
    ) ;
}

标签:传参,PathVariable,openfeign,public,熔断,Integer,id,cloud
From: https://blog.csdn.net/ZX115675/article/details/140680497

相关文章

  • sentinel 服务流量控制 、熔断降级
    1、什么是sentinel,可以用来干什么    sentinel是用来在微服务系统中保护微服务对的作用,如何避免服务的雪崩、熔断、降级,说白了就是用来替换hystrix。Sentinel以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。    官网:GitH......
  • vue的属性绑定/条件渲染/列表渲染/key管理状态/事件处理/事件传参/事件修饰符等知识总
    1.属性绑定属性绑定使用v-bind命令执行,可忽略不写,以下图片为属性绑定知识内容效果图2.条件渲染条件渲染使用v-if命令执行**v-ifVSv-show区别**v-if是"真实的"按条件渲染,因为它确保了在切换时,条件区块内的事件监听器和子组件都会被销毁与重建(将条件移除和添加如果首次......
  • 实战:OpenFeign使用以及易踩坑说明
    OpenFeign是SpringCloud中的重要组件,它是一种声明式的HTTP客户端。使用OpenFeign调用远程服务就像调用本地方法一样,但是如果使用不当,很容易踩到坑。Feign和OpenFeignFeignFeign是SpringCloud组件中的一个轻量级RESTful的HTTP服务客户端Feign内置了Ribbon,用来做客户端负载......
  • OpenFeign
    ♥️作者:小宋1021......
  • 函数传参,递归函数(汉诺塔,裴波那契数列),预处理
    递归函数 获得斐波那契数列的第n项的值斐波那契数列是指这样一个数列:1,1,2,3,5,8,13,21,34,55,89……这个数列从第3项开始,每一项都等于前两项之和。#include<stdio.h>intFbnq(intn){if(n==1){return1;}elseif(n==2){return1......
  • @RequestPart-Java接口,同时传参JSON对象数据和文件
    简单介绍前端传递文件参数的时候,通常会使用POST方式传参,将请求header的content-type设置为:multipart/form-data(因为GET请求只能传递文本类型的参数,而文件属于二进制数据,无法直接通过GET方式传递。)前端通过POST传参时,header的content-type设置为"application/json"......
  • vue非常常用的页面传参、调用(一定要牢牢记住!)
    一.首先,是最基础的在父组件中引入子组件,调用子组件,如下:   1.引入组件   2.注册组件   3.调用组件  父组件parent.vue ↓   子组件child.vue ↓二.然后,我们来学习父组件传递参数给子组件,如下:   1.父组件其实是用v-bind属......
  • 函数的传参,递归函数,宏定义,头文件
    数组传递中,形参和实参操作的是同一个数组 1.带参宏#definePRINTF(x,y,z)do{\      printf("x=%d\n",x);\           printf("y=%d\n",y);\      printf("z=%d\n",z);\}while(0)\是连接字符,宏定义只能写成一行,\可以把两行连......
  • 【微服务】第38节:微服务的OpenFeign远程调用
    1.远程调用我们知道微服务间远程调用都是有OpenFeign帮我们完成的,甚至帮我们实现了服务列表之间的负载均衡。但具体负载均衡的规则是什么呢?何时做的负载均衡呢?接下来我们一起来分析一下。1.1.负载均衡原理在SpringCloud的早期版本中,负载均衡都是有Netflix公司开源的Ribbon......
  • openFeign调用问题:required a bean of type 'xxx' that could not be found.
    场景:服务B是一个公共的服务,打包成jar后给其他服务使用packagecom.testB.seviceB.remote;//服务B中定义的feign接口@FeignClient(value="service-c",path="/service-c")publicinterfaceServiceBClient{xxxx} 服务A中引用服务B中定义的Feign接口package......