目录
ribbon底层封装了RestTemplate进行Rest api远程调用
一、RestTemplate介绍
RestTemplate是springboot提供的远程调用工具
常用的方法:
- getForObject():
该方法是getForEntity方法的进一步封装,通过HttpMessageConverterExtractor对HTTP的请求响应体body内容进行对象转换,实现请求直接返回包装好的对象内容。有三个重载。
getForObject(String url,Class responseType,Object ...urlVariables);
url参数为指定访问的地址如果其中有传递的参数,使用{1},{2}这种类型的占位符表示,responseType是参数返回结果的类型,urlVariables是前面url占位符对应的参数。
getForObject(String url,Class responseType,Map urlVariables);
前两个参数与前一致,最后一个参数使用Map封装替换url中出现的占位符。
getForObject(String url,Class responseType);
没有需要传递的参数。
- postForObject()
用于发送post请求,与get类似
也提供了三种重载:
postForObject(String url,Class responseType,Object ...urlVariables);
postForObject(String url,Class responseType,Map urlVariables);
postForObject(String url,Class responseType);
二、需求说明
这里先不使用Ribbon,先单独使用RestTemplate进行远程调用
1、业务结构及说明
当前是一个商品信息,用户和订单三者之间的服务,并且使用Eureka集群提供服务发现与注册
结构及功能为: