继续上一篇,接下来Springcloud配置Open-feign,调用其他服务模块接口,远程调用的作用。
1、创建open-feign子模块
勾选Web、Eureka-client、openfeign
继承父工程,pom文件修改如下:
<parent> <groupId>com.springcloud</groupId> <artifactId>daddy</artifactId> <version>0.0.1-SNAPSHOT</version> </parent>
父工程daddy的pom文件添加对子模块open-feign的依赖,如下:
<module>open-feign</module>
2、启动类
在启动类添加注解eureka-client的开启以及openfeign的注解
@EnableFeignClients @EnableEurekaClient
3、配置文件
子模块open-feign对application.properties添加eureka-client的配置
# openfeign 项目端口号 server.port=8076 # openfeign 项目实例名 spring.application.name= open-feign # openfeign 默认30秒主动向注册中心发送一次心态 eureka.instance.lease-renewal-interval-in-seconds=20 # openfeign 需要去注册的地址,也就是eureka-server的地址+/eureka的后缀 eureka.client.serviceUrl.defaultZone=http://localhost:8070/eureka/
4、创建伪客户端
@FeignClient(name = "eureka-client") public interface OpenFeignClient { @GetMapping(value = "/testRabbion") String getStores(); }
其中@FeignClient中的name的值为子模块名称,spring.application.name
5、controller层
@RestController public class OpenFeignController { private Logger logger = LoggerFactory.getLogger(OpenFeignController.class); @Autowired OpenFeignClient openFeignClient; @GetMapping(value = "/test1") public void test1(){ String str = openFeignClient.getStores(); logger.info(str); } }
6、启动
先启动注册中心eureka-server,然后启动eureka-client,最后启动open-feign
测试open-feign的接口,如下:
2019-12-01 20:24:01.947 INFO 10456 --- [nio-8076-exec-5] c.s.o.controller.OpenFeignController : eureka-client子模块,该端口号为:8072
openfeign配置成功!