Spring Cloud OpenFeign Spring Cloud OpenFeign REST服务客户端原理及用法解析
StrongerBrother 人气:0想了解Spring Cloud OpenFeign REST服务客户端原理及用法解析的相关内容吗,StrongerBrother在本文为您仔细讲解Spring Cloud OpenFeign的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Spring,Cloud,OpenFeign,REST服务客户端,下面大家一起来学习吧。
OpenFeign是什么?
OpenFeign是REST服务客户端,REST其实就是HTTP啦,所以OpenFeign其实就是HTTP客户端,那么他和HttpClient有什么不同呢
- OpenFeign的使用方法更加的简单
- OpenFeign配合Spring的HttpMessageConverters可以自动把结果转换成Java对象
- OpenFeign配合Ribbon、Eureka和Spring Cloud LoadBalancer可以支持负载均衡
如何使用OpenFeign
第一步引入OpenFeign
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency>
第二步启动OpenFeign客户端功能
@SpringBootApplication @EnableFeignClients public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
第三步编写REST服务接口
@FeignClient(name = "stores", url = "http://localhost:7074")<br data-filtered="filtered">public interface StoreClient { @RequestMapping(method = RequestMethod.GET, value = "/stores") List<Store> getStores(); @RequestMapping(method = RequestMethod.POST, value = "/stores/{storeId}", consumes = "application/json") Store update(@PathVariable("storeId") Long storeId, Store store); }
在@FeignClient中的字符串称为Feign客户端名字,它可以是任意的字符串,设置名字的目的就是为了方便在其它地方引用它,例如配置Rabbin或Spring Cloud LoadBalancer负载均衡(后面会详细介绍如何做)。
在@FeignClient中还可以设置url参数,它表示提供REST服务的地址,如果你没有设置url参数,那么就要在配置文件中配置。
之后我们就可以把StoreClient注入到我们需要使用的地方啦。
加载全部内容