一。引入feign依赖
<!-- fegin客户端依赖-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
二。在启动类加入
@EnableFeignClients注解
三。新建UserClient接口
@FeignClient("userservice") //服务名称
public interface UserClient {
@GetMapping("user/{id}") //url+参数
User findById(@PathVariable("id") long id); //方法名,自定义
}
四。调用
public Order getById1(int id){
Order order = orderDao.selectById(id);
User byId = userClient.findById(order.getUserId());
order.setUser(byId);
return order;
}
五,feign的优化
六,抽取FeignClient
新建一个maven项目,引入openfeign
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
</dependencies>
新建Userclient接口和User类
@FeignClient(value = "userservice")
public interface Userclient {
@GetMapping("/user/{id}")
User findById(@PathVariable("id") long id);
}
public class User {
private int id;
private String username;
private String address;
}
再去需要调用服务处引用
在启动类处添加注解