spring-cloud feign (web服务客户端)
原理: 将微服务之间的调用请求伪装成本地请求。提供feign客户端,封装HTTP请求,从而不需要关注其他微服务的URL地址以及请求的方法参数等等。一切由feign去处理。 feign 支持springMVC注解方式,所以可以使用@GetMapping 等方式来简便的提供url 地址
feign 底层实现是动态代理,通过反射找到对应的类,编码方式类似mybatis 的接口实现方式。 实现步骤: 1、增加依赖
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
feign 底层实现是动态代理,通过反射找到对应的类,编码方式类似mybatis 的接口实现方式。 实现步骤: 1、增加依赖
<dependency>2、增加注解 在springboot 启动器中增加 @EnableFeignClients //启用feign 3、增加接口提供给fegin 并提供被调用方法的 相关参数(返回值,传参,服务地址,方法名)
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
/**4、调用该接口
* 提供相关参数 返回值,传参,服务地址,方法名
*/
@FeignClient("USER-SERVICE") //微服务地址
public interface UserClient {
@GetMapping("user/{id}") //调用路径
String queryById(@PathVariable String id);
}
@Autowired
UserClient userClient;
@GetMapping("{id}")
public String findOne(@PathVariable String id) {
return userClient.queryById(id);
}

更多精彩