【SpringCloud】Feign-01-配置
配置
- 导入依赖
<!--feign客户端依赖-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
- 在SpringBootApplication配置类上启用注解
@EnableFeignClients - 编写接口,并使用注解
@FeignClient()声明,遵循SpringMVC规范
@FeignClient("userservice") // 写服务名称
public interface UserClient {
@GetMapping("/user/{id}") // 遵循SpringMVC规范
User findById(@PathVariable("id") Long id);
}
相比于RestTemlate,优雅
// 2. 利用RestTemplate发起Http请求,查询用户
// 2.1. url路径
String url = "http://userservice:8081/user/" + order.getUserId().toString();
User user = restTemplate.getForObject(url, User.class);
- 测试
@Autowired
private UserClient userClient; // 依赖注入
public Order queryOrderById(Long orderId) {
// 1.查询订单
Order order = orderMapper.findById(orderId);
// 2. 利用Feign发起Http请求,查询用户
User user = userClient.findById(order.getUserId());
// 3.封装user到Order
order.setUser(user);
// 4.返回
return order;
}
本文来自博客园,作者:chendsome,转载请注明原文链接:https://www.cnblogs.com/chendsome/p/18559054

浙公网安备 33010602011771号