译自Spring Cloud Document
7.7 Feign的继承支持
Feign通过单继承接口支持模板apis。这样可以把常用操作通过接口进行分组。
UserService.java.
1 2 3 4 5
| public interface UserService {
@RequestMapping(method = RequestMethod.GET, value ="/users/{id}") User getUser(@PathVariable("id") long id); }
|
UserResource.java.
1 2 3 4
| @RestController public class UserResource implements UserService {
}
|
UserClient.java.
1 2 3 4 5 6
| package project.user;
@FeignClient("users") public interface UserClient extends UserService {
}
|
通常不建议在服务器和客户端之间共享接口(Java Interface)。这是一种紧耦合,而且这样也无法使用Spring MVC(方法中的参数映射不会被继承)。