📅  最后修改于: 2023-12-03 15:30:45.105000             🧑  作者: Mango
Feign 是一个声明式的 REST 客户端,它使得编写 Web 服务客户端更加容易。使用 Feign,只需要定义一个接口并为它添加注解即可完成对 Web 服务接口的绑定。
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
<version>2.2.3.RELEASE</version>
</dependency>
@FeignClient(name = "service-name")
public interface DemoFeignClient {
@GetMapping("/users/{id}")
User getUserById(@PathVariable("id") Long id);
}
@FeignClient
注解表明了这是一个 Feign 客户端,name
属性指定所调用的服务名称,即 service-name
。getUserById
方法则是调用了该服务下的 /users/{id}
接口。
@RestController
public class DemoController {
@Autowired
private DemoFeignClient demoFeignClient;
@GetMapping("/{id}")
public User getUserById(@PathVariable Long id) {
return demoFeignClient.getUserById(id);
}
}
Controller 中注入 DemoFeignClient
接口的实例,然后在 getUserById
方法中调用其方法。
至此,通过 Feign 客户端完成了对服务的调用。
Feign 可以让我们更加方便、优雅地编写 REST 客户端,提高效率,减少出错。同时,通过与 Spring Cloud 集成可以适应多种场景。
以上就是 Feign 客户端的基本介绍,希望对大家有所帮助。