SpringCloud学习(四)创建Feign项目进行服务端调用
- 1.IDEA创建SpringBoot工程 feignServerApi, feignServer,feignClient三个项目,其中feignServerApi定义接口及Feign的使用,feignServer是真实的服务提供者,feignClient是消费者
- 2.创建Maven项目feignServerApi,提供服务接口
- 3.创建SpringBoot项目feignServer,提供服务
- 4.在spring-cloud-feign-server-api添加client类
- 5.在spring-cloud-feign-server添加实现client类
- 6.创建FeignClient消费者
- 7.启动服务,访问eureka信息
1.IDEA创建SpringBoot工程 feignServerApi, feignServer,feignClient三个项目,其中feignServerApi定义接口及Feign的使用,feignServer是真实的服务提供者,feignClient是消费者
2.创建Maven项目feignServerApi,提供服务接口
.配置pom信息
<?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">
<modelVersion>4.0.0</modelVersion>
<groupId>cn.liulin</groupId>
<artifactId>spring-cloud-feign-server-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
<parent>
<artifactId>spring-cloud-integration</artifactId>
<groupId>cn.liulin</groupId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
</dependencies>
</project>
3.创建SpringBoot项目feignServer,提供服务
配置pom信息
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>cn.liulin</groupId>
<artifactId>spring-cloud-feign-server</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>spring-cloud-feign-server</name>
<description>SpringCloud聚合学习Feign服务提供</description>
<parent>
<groupId>cn.liulin</groupId>
<artifactId>spring-cloud-integration</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>cn.liulin</groupId>
<artifactId>spring-cloud-feign-server-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
添加注解及配置文件
将application.properties修改为application.yml
server:
port: 8763
eureka:
client:
serviceUrl:
defaultZone: http://localhost:9999/eureka/
spring:
application:
name: spring-cloud-feign-server
解决报错
将import org.junit.jupiter.api.Test;
替换为import org.junit.Test;
4.在spring-cloud-feign-server-api添加client类
5.在spring-cloud-feign-server添加实现client类
6.创建FeignClient消费者
配置pom信息
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>cn.liulin</groupId>
<artifactId>spring-cloud-feign-client</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>spring-cloud-feign-client</name>
<description>SpringCloud聚合学习工程消费者</description>
<parent>
<groupId>cn.liulin</groupId>
<version>0.0.1-SNAPSHOT</version>
<artifactId>spring-cloud-integration</artifactId>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>cn.liulin</groupId>
<artifactId>spring-cloud-feign-server-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
添加注解及配置文件更改
server:
port: 8764
eureka:
client:
service-url:
defaultZone: http://localhost:9999/eureka/
spring:
application:
name: spring-cloud-feign-client
解决报错
将import org.junit.jupiter.api.Test;
替换为import org.junit.Test;
添加调用实体类
7.启动服务,访问eureka信息
http://127.0.0.1:9999/
访问127.0.0.1:8764/getInfo
成功调用