使用RestTemplate调用服务

项目中使用过HttpClient、RestTemplate和FeignClient三种方式调用服务。
我是比较喜欢RestTemplate调用服务的。

下面是我自己常用的写法,反正就是根据服务返回的json格式,使用对应的数据结构进行解析:

List<Map<String, String>> serviceTraces = restTemplate.getForObject(serviceUrl, ArrayList.class);

XXXServiceResponse response = restTemplate.getForObject(url, XXXServiceResponse.class);

HashMap<String,List<Map<String,Object>>> dataSetLists = null;
List<Map<String,Object>> dataSetList = null;
dataSetLists = restTemplate.getForObject(url,HashMap.class );
dataSetList = dataSetLists.get("data");
Map<String, Object> stringStringMap = dataSetList.get(i);
String domainId = (String) stringStringMap.get("domain");
开启负载均衡

RestTemplate开启客户端负载均衡功能,这样可以通过服务名作为url地址,而不在需要具体的服务地址。
会把类似于http://HELLO-SERVICE/hello这种地址转为类似于http://195.124.207.128/hello

@Bean
@LoadBalanced
RestTemplate restTemplate() {
	return new RestTemplate();
}
参考资料

https://www.cnblogs.com/javazhiyin/p/9851775.html
https://blog.csdn.net/u012702547/article/details/77940838

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值