RestTemplate 是 Spring Restful Client 用于调用restful接口
HTTP Restful SpringCloud 微服务
SpringCloud服务调用有两种方式:restTemplate和Fegin
RPC-->Dubbo
RestTemplate API使用方法
public <T> T getForObject(String url, Class<T> responseType)
参数一:URL调用地址
参数二:调用返回值类型
@RequestMapping(value = "/list")
public List<User> list() {
return restTemplate.getForObject(userServiceUrl + "/list", List.class);
}
public <T> T getForObject(String url, Class<T> responseType, Object... uriVariables) 参数一:URL调用地址 参数二:调用返回值类型 参数三:参数值列表
使用占位符,传递参数,在get后加{1},参数会自动替换占位符
@RequestMapping(value = "/getOne")
public User list2() {
User params = new User();
params.setId(2L);
// User user = restTemplate.getForObject(userServiceUrl + "/get/{1}", User.class, params.getId());
User user = restTemplate.getForObject(userServiceUrl + "/get/"+params.getId(), User.class);
return user;
}
public <T> T getForObject(String url, Class<T> responseType, Object... uriVariables)
使用map,传递参数,需要在URL后拼接服务端参数名及map中key的名称,如果key在map中没有则会报异常