上一节我们使用了Ribbon(基于Http/Tcp
)进行微服务的调用,Ribbon的调用比较简单,通过Ribbon组件对请求的服务进行拦截,通过Eureka Server
获取到服务实例的IP:Port
,然后再去调用API。本节课我们使用更简单的方式来实现,使用声明式的Web
服务客户端Feign
,我们只需要使用Feign来声明接口,利用注解
来进行配置就可以使用了,是不是很简单?实际工作中,我们也只会用到Feign来进行服务之间的调用(大多数)。接下来,我们来实例操作一把。
为了代码的重用性,我们来创建一个新的project mscx-ad-feign-sdk
作为Feign的服务调用工具。
- 创建项目
mscx-ad-feign-sdk
- 三部曲之Step 1(加依赖)
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>mscx-ad</artifactId>
<groupId>com.sxzhongf</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<name>mscx-ad-feign-sdk</name>
<description>只定义微服务Feign调用用到的请求对象和响应对象,而不涉及具体的实现类。