@EnableFeignClients

在Spring cloud应用中,当我们要使用feign客户端时,一般要做以下三件事情 :

1.使用注解@EnableFeignClients启用feign客户端;
示例 :

@SpringBootApplication
@EnableFeignClients
public class TestApplication {
    public static void main(String[] args) {
        SpringApplication.run(TestApplication.class, args);
    }
}

2.使用注解@FeignClient 定义feign客户端 ;示例 : 该例子定义了一个feign客户端,将远程服务http://test-service/test/echo映射为一个本地Java方法调用。

@FeignClient(name = "test-service", path = "/test")
public interface TestService {
    @RequestMapping(value = "/echo", method = RequestMethod.GET)
    TestModel echo(@RequestParam("parameter") String parameter);
}

3.使用注解@Autowired使用上面所定义feign的客户端 ;

  @Autowired   
    TestService testService;

    public void run()
    {
        // 这里的使用本地Java API的方式调用远程的Restful接口
        TestModel dto = testService.echo("Hello,你好!");
        log.info("echo : {}", dto);
     }

上面的三个步骤,前两个步骤可以理解为定义feign客户端,第三步是使用所定义的feign客户端。通过调试发现,上面第三步所注入的testService是一个代理对象。

你可能感兴趣的:(技术)