Spring Cloud之远程调用OpenFeign参数传递
OpenFeign参数传递
传递单个参数
服务提供方product-service
@RequestMapping("/product")
@RestController
public class ProductController {
@Autowired
private ProductService productService;
@RequestMapping("/p1")
public String p1(Integer id){
return "product-service 接收到参数, id:"+id;
}
}Feign客户端
@FeignClient(value = "product-service",path = "/product")
public interface ProductApi {
@RequestMapping("/p1")
String p1(@RequestParam("id") Integer id);
}远程调用方order-service
@RequestMapping("/feign")
@RestController
public class FeignController {
@Autowired
private ProductApi productApi;
@RequestMapping("/o1")
public String o1(Integer id){
return productApi.p1(id);
}
}启动服务并访问

传递多个参数
服务提供方product-service
@RequestMapping("/product")
@RestController
public class ProductController {
@Autowired
private ProductService productService;
@RequestMapping("/p2")
public String p2(Integer id, String name){
return "product-service 接收到参数, id:"+id+",name:"+name;
}
}Feign客户端
@FeignClient(value = "product-service",path = "/product")
public interface ProductApi {
@RequestMapping("/p2")
String p2(@RequestParam("id") Integer id, @RequestParam("name") String name);
}远程调用方order-service
@RequestMapping("/feign")
@RestController
public class FeignController {
@Autowired
private ProductApi productApi;
@RequestMapping("/o2")
public String o2(Integer id, String name){
return productApi.p2(id,name);
}
}启动服务并访问

传递对象
服务提供方product-service
@RequestMapping("/product")
@RestController
public class ProductController {
@Autowired
private ProductService productService;
@RequestMapping("/p3")
public String p3(ProductInfo productInfo){
return "product-service 接收到参数: productInfo"+productInfo.toString();
}
}Feign客户端
@FeignClient(value = "product-service",path = "/product")
public interface ProductApi {
@RequestMapping("/p3")
String p3(@SpringQueryMap ProductInfo productInfo);
}远程调用方order-service
@RequestMapping("/feign")
@RestController
public class FeignController {
@Autowired
private ProductApi productApi;
@RequestMapping("/o3")
public String o3(){
ProductInfo productInfo = new ProductInfo();
productInfo.setId(45);
productInfo.setProductName("T恤");
return productApi.p3(productInfo);
}
}启动服务并访问

传递JSON
服务提供方product-service
@RequestMapping("/product")
@RestController
public class ProductController {
@Autowired
private ProductService productService;
@RequestMapping("/p4")
public String p4(@RequestBody ProductInfo productInfo){
return "product-service 接收到参数: productInfo"+productInfo.toString();
}
}Feign客户端
@FeignClient(value = "product-service",path = "/product")
public interface ProductApi {
@RequestMapping("/p4")
String p4(@RequestBody ProductInfo productInfo);
}远程调用方order-service
@RequestMapping("/feign")
@RestController
public class FeignController {
@Autowired
private ProductApi productApi;
@RequestMapping("/o4")
public String o4(){
ProductInfo productInfo = new ProductInfo();
productInfo.setId(46);
productInfo.setProductName("T恤46");
return productApi.p4(productInfo);
}
}启动服务并访问

到此这篇关于Spring Cloud之远程调用OpenFeign参数传递的文章就介绍到这了,更多相关Spring Cloud OpenFeign参数传递内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
- SpringCloud OpenFeign 参数传递和响应处理的详细步骤
- 解决SpringCloud Gateway采用OpenFeign远程调用失败的问题
- Spring Cloud OpenFeign 远程调用
- SpringCloud整合OpenFeign实现微服务间的通信
- SpringCloud OpenFeign 自定义响应解码器的问题记录
- SpringCloud OpenFeign超时控制示例详解
- Alibaba SpringCloud集成Nacos、openFeign实现负载均衡的解决方案
- springcloud引入spring-cloud-starter-openfeign失败的解决
- 完美解决SpringCloud-OpenFeign使用okhttp替换不生效问题
- SpringCloud OpenFeign Post请求400错误解决方案
- SpringCloud 服务负载均衡和调用 Ribbon、OpenFeign的方法
相关文章
解决Java项目启动报错:Logback configuration error detected:问题
这篇文章主要介绍了解决Java项目启动报错:Logback configuration error detected:问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-04-04
java poi设置生成的word的图片为上下型环绕以及其位置的实现
这篇文章主要介绍了java poi设置生成的word的图片为上下型环绕以及其位置的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-09-09
springboot+mybatis配置clickhouse实现插入查询功能
这篇文章主要介绍了springboot+mybatis配置clickhouse实现插入查询功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-08-08


最新评论