目录
1 前言
2 Feign
2.1 什么是feign
2.2 Feign的使用
1 前言之前我们在服务中用订单微服务调用了商品微服务,这种远程服务,我们使用的是restTemplate。但是在我们的微服务中肯定有提供远程调用的组件,像feign和openFeign。今天我们先简单了解下feign的简单使用。
2 Feign 2.1 什么是feignFeign是SpringCloud提供的一个声明式的伪Http客户端,它使得调用远程服务就像调用本地服务一样简单,只需要创建一个接口并且添加一个注解即可。
2.2 Feign的使用1)feign的依赖
org.springframework.cloud spring-cloud-starter-openfeign
2)在启动类上加上@EnableFeignClients注解
3)在调用方添加接口
比如:之前是在订单微服务中调用商品微服务的接口,采用的是如下的方式。
现在在订单微服务中,添加接口。如下:
import com.liubujun.Product;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @Author: liubujun
* @Date: 2022/5/4 14:55
*/
@FeignClient(value = "server-product") // value为用于指定调用nacos下哪个微服务
public interface ProductService {
/**
* 其实feignclient的value + RequestMapping的value值就是完整的请求地址
* Product product
* = restTemplate.getForObject("http://server-product/product/" + pid, Product.class);
* @param pid
* @return
*/
@RequestMapping("/product/{pid}")
Product findById(@PathVariable Integer pid);
}
4)启动nacos,重启服务.访问 http://localhost:8091/order/prod/2成功。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)