一、什么是OpenFeign
OpenFeign为微服务架构下服务之间的调用提供了解决方案,OpenFeign是一种声明式、模板化的HTTP客户端。在Spring Cloud中使用OpenFeign,可以做到使用HTTP请求访问远程服务,就像调用本地方法一样的,开发者完全感知不到这是在调用远程方法,更感知不到在访问HTTP请求。
二、
先扫描客户端;
在自定义的客户端类中
@FeignClient(" 服务器名称")
扫包获得接口+通过动态代理生成实现类
服务发现:通过反射读取到 @FeignClient中的服务名,执行服务发现过程
负载均衡: 集成了ribbon负载均衡器实现
服务调用:
- 获取请求路径、参数等配置信息,通过反射读取到SpringMVC的注解获得
- 序列化反序列化,发送请求,获得响应,返回
服务调用:
把自定义客户端注入Controller可以直接调用上面写好的方法;
注意参数一点要加以下注解:
@requestbody (以对象封装)只能有一个
@requestparam 可以多个
@PathVaiable 可以多个
注意:如果不加服务调用就会报错;