Feign 是一個聲明式的僞 Http 用戶端,它使得寫 Http 用戶端變得更簡單。使用 Feign,隻需要建立一個接口并注解。它具有可插拔的注解特性,可使用 Feign 注解和 JAX-RS 注解。Feign 支援可插拔的編碼器和解碼器。Feign 預設內建了 Ribbon,并和 Eureka 結合,預設實作了負載均衡的效果
- Feign 采用的是基于接口的注解
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
步驟二:配置檔案 spring:
application:
name: hello-spring-cloud-web-admin-feign
server:
port: 8766
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/
步驟三:啟動類上加注解 @SpringBootApplication
步驟四:編寫接口調用服務,重點!!! @FeignClient(value = "hello-spring-cloud-service-admin")
public interface AdminService {
@RequestMapping(value = "hi")
public String sayHi(@RequestParam(value = "message") String message);
}