Spring Cloud Alibaba 之 “Feign多参数构造”

在上一篇文章整合好了Feign,现在来总结以下Feign调用多参数方法的使用。

GET方式:

Spring Cloud为Feign支持了Spring Mvc注解的。如果请求的是localhost:8083/test?id=1&name=coco,那么如果我们这样写(User实体类有这二个属性)

复制代码
@FeignClient("people-center")
public interface UserFeignClient {
  @RequestMapping(value = "/get", method = RequestMethod.GET)
  public User test(User user);
}

这样其实是会报错的,因为即使我们指定了GET,但是Feign还是会以POST方式请求,所以我们需要修改成如下这样的

复制代码
@FeignClient("people-center")
public interface UserFeignClient {
  @RequestMapping(value = "/get", method = RequestMethod.GET)
  public User test(@SpringQueryMap User user);
}

或者是

复制代码
@FeignClient("people-center")
public interface UserFeignClient {
  @RequestMapping(value = "/get", method = RequestMethod.GET)
  public User test(@RequestParam("id") Long id,@RequestParam("name") String name);
复制代码
或者是
复制代码
 @FeignClient("people-center")
  public interface UserFeignClient {
    @RequestMapping(value = "/get", method = RequestMethod.GET)
    public User test(@RequestParam Map<String, Object> map);
  }

推荐使用第二种,因为比较直观

POST请求

代码解读

复制代码
    @FeignClient("people-center")
    public interface UserFeignClient {
      @RequestMapping(value = "/post", method = RequestMethod.POST)
      public User test(@RequestBody User user);
    }

POST请求就很简单了,直接按照上面方式写就行了

相关推荐
一个风轻云淡17 分钟前
Markdown学习与实践
后端
程序员cxuan22 分钟前
真没想到,AI 圈又杀出来一匹黑马!
人工智能·后端·程序员
nvvas37 分钟前
Java 入门(四):数组——数据的集合管理
java·开发语言
掘金者阿豪1 小时前
极空间 NAS 部署 Typecho:从 Docker 安装、主题配置到固定公网访问
后端
科技苑1 小时前
前后端分离与微服务架构如何协同?
前端·后端·前端框架
Lambert2811 小时前
AgentScope Java 从零(07):官方有权限引擎,我却在工具里写了个 if
java·后端·ai编程
Ticnix1 小时前
多租户 RAG:让每个用户只检索到自己的知识库
后端·python·agent
Kyrie_kk1 小时前
Java--ThreadLocal线程副本(一)
java·后端
用户9479135811621 小时前
ReAct 不是框架,是一个 while 循环:把 Agent 的推理模式拆到能自己写出来
后端
属于自己的天空1 小时前
不用再手动查表结构了:配好 MCP,Claude Code 自己读数据库生成代码
数据库·后端