我的目标是创建一个步骤不同的策略,从点对点通信的两个组件到使用Eureka、Ribbon、Hystrix的“完整的netflix”样式的通信。每次迭代时,我希望添加更多内容,同时尽量限制实际代码的更改量。Feign是我首选的客户端框架,以实现这一目标。第一步是创建一个FeignClient来与服务器进行通信:
@FeignClient(url = "http://localhost:9000")
interface Client {
@RequestMapping(method = RequestMethod.GET, value = "/author/{author}/addedValue/{addedValue}")
Result addToTotal(@RequestParam(value="author") String author, @RequestParam(value="addedValue") long addedValue);
}
这个方法可行,但我不想在注释中硬编码URL。我希望能这样做:@FeignClient(),并且有一个类似于属性的结构:client.url: http://localhost:9000
到目前为止,我无法找到任何关于如何配置它的线索,并且我在spring-cloud源代码中也找不到解决方案。
是否可以实现,如果可以,怎么办?