两个服务A,B
A调用B的方法,现在B方式写好业务,然后定义方法名,A调用方法名
映入product类,调用方法getCategory
// 查询分类 Category category = productFeignClient.getCategory(skuInfo.getCategoryId());
定义方法名(可以独立写一个模块专门定义方法,调用的地址为内部调用,所以所有的模块需要注入到nacos中)
@GetMapping("/api/product/inner/getCategory/{categoryId}") public Category getCategory(@PathVariable("categoryId") Long categoryId);
通过地址调用B实现的业务逻辑,从而返回想要的数据
@ApiOperation(value = "根据skuId获取sku信息") @GetMapping("inner/getSkuInfo/{skuId}") public SkuInfo getSkuInfo(@PathVariable("skuId") Long skuId) { return skuInfoService.getById(skuId); }
/**
* @Author gaosy
* @Date 2023/8/30 21:08
* @FeignClient(value = "service-product") 服务名称
*/
@FeignClient(value = "service-product")
public interface ProductFeignClient {
@GetMapping("/api/product/inner/getCategory/{categoryId}")
public Category getCategory(@PathVariable("categoryId") Long categoryId);
@GetMapping("/api/product/inner/getSkuInfo/{skuId}")
public SkuInfo getSkuInfo(@PathVariable("skuId") Long skuId);
}
nacos注入方法。引入nacos依赖,配置文件
spring: datasource: url: jdbc:mysql://localhost:3306/cloud_order?useSSL=false username: root password: root driver-class-name: com.mysql.cj.jdbc.Driver application: name: orderService cloud: nacos: server-addr: localhost:8848 #ip地址。以及开放的端口名称 discovery: #集群名称 cluster-name: HZ
标签:skuId,product,调用,openfeign,getCategory,nacos,categoryId From: https://www.cnblogs.com/gsyy/p/17827285.html