Nacos(1.4)- nacos 服务消费(使用Spring Cloud OpenFeign)
Spring Cloud OpenFeign 是 Spring Cloud 基于Netflix feign实现的远程服务调用组件,它整合了Spring Cloud Ribbon,Netflix Hystrix,使得调用远程服务更加的容易
官方帮助: https://docs.spring.io/spring-cloud-openfeign/docs/2.2.10.RELEASE/reference/html/
如何使用 Spring Cloud OpenFeign
① 引入依赖
<properties>
<spring-cloud-openfeign.version>2.0.0.RELEASE</spring-cloud-openfeign.version>
</properties>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
<version>${spring-cloud-openfeign.version}</version>
</dependency>
② 在启动类添加 @EnableFeignClients 注解
@SpringBootApplication
@EnableDiscoveryClient
@EnableFeignClients
public class NacosDemoConsumerApplication {
public static void main(String[] args) {
SpringApplication.run(NacosDemoConsumerApplication.class, args);
}
}
③ 编写调用远程服务接口
其中 nacos-provider 是调用的服务名称 @RequestMapping 中配置了调用服务的具体方法
/**
* path 配置对应服务端的上下文路径
*/
@Component
@FeignClient(name = "nacos-provider",path = "nacos-provider")
public interface NacosProviderService {
@RequestMapping(method = RequestMethod.GET, value = "hello")
String hello();
}
④ 编写控制层方法
@RestController
public class NacosConsumerController2 {
@Autowired
private NacosProviderService nacosProviderService;
@GetMapping(value = "hello2")
public String hello() {
return nacosProviderService.hello();
}
}