Spring Cloud声明式调用Feign客户端实例
本文将讲解若何利用RestTemplate来消费办事 , 若何连系Ribbon在消费办事时做负载平衡 。 接下来将周全讲解Feign , 包罗若何利用Feign来长途调剂其他办事、FeignClient的各项具体设置装备摆设 , 并从源码的角度深切讲解Feign 。
需要这些哦
Java情况
idea/eclipse
maven
方式/
1【Spring Cloud声明式调用Feign客户端实例】Feign受Retrofit、JAXRS-2.0和WebSocket的影响 , 采用了声明式API接口气概 , 将Java http客户端绑定到它的内部 。 Feign的首要方针是将Java http客户端的挪用变得简单 。
2新建一个Springboot的Moudle工程 , 取名为eureka-feign-client 。 起首 , 在工程的pom文件中插手相关的依靠 , 包罗担当了本家儿maven工程的pom文件、Feign的起步依靠spring-cloud-starter-feign、EurekaClient的起步依靠spring-cloud-starter-eureka、Web功能的起步依靠spring-boot-starter-web , 以及Spring boot测试的起步依靠spring-boot-starter-test , 代码如下:

文章插图
3引入这些依靠之后 , 在工程的设置装备摆设文件application.yml做相关的设置装备摆设 , 包罗设置装备摆设法式名为eureka-feign-client , 端标语8765 , 办事注册地址为 http://localhost:8761/eureka/ , 代码如下:

文章插图
4在法式的启动类EurekaFeignClientApplication加上注解@EnableEurekaClient开启eureka client的功能 , 经由过程注解@EnableFeignClients开启Feign Client的功能 , 代码如下:

文章插图
5经由过程以上3个
, 该法式就具备了Feign的功能 , 此刻来实现一个简单的FeignClient 。 新建一个EurekaFeignClient的接口 , 在接口上加上@FeignClient注解来声明一个FeignClient , 此中value为长途挪用其它办事的办事名 , FeignConfig.class为FeignClient的设置装备摆设类 。 在EurekaFeignClient接口内部有一个sayHiFromClientEureka()方式 , 该方式经由过程Feign来挪用eureka-client办事的“/hi”的API接口 , 代码如下:

文章插图
6在FeignConfig类上加上@Configuration注解 , 表白该类是一个设置装备摆设类 , 并注入了一个BeanName为feignRetryer的Retryer的Bean 。 注入该bean后 , Feign在长途挪用掉败后会进行重试 。 代码如下:

文章插图
7在Service层的HiService类注入EurekaFeignClient的bean , 经由过程EurekaFeignClient去挪用sayHiFromClientEureka()方式 , 代码如下:

文章插图
8在HiController类上加上@RestController注解 , 开启RestController的功能 , 写一个API接口“/hi” , 在该接口挪用了HiService的sayHi()方式 。 HiService经由过程EurekaFeignClient长途挪用eureka-client办事的API接口“/hi” 。 代码如下:

推荐阅读
- spring boot整合ehcache缓存框架
- ppt幻灯片转成图片的方法
- icloud备份删除了怎么恢复
- spring boot配置mongo,并保存数据
- spring boot配置redis
- Wordpress用户管理添加删除用户方法
- 360无线路由器怎么换外网IP方法
- 如何学习spring的源码之spring的整体架构介绍
- WordPress数据库批量替换方法
- 云盘Cloud相册怎么重命名