SpringCloud学习笔记 (5)

image-20210201151428714

springcloud-consumer-dept-80访问springcloud-provider-dept-8001下的controller使用REST方式

DeptConsumerController.java

/** * @Auther: antai * @Date: 2020/05/17/22:44 * @Description: */ @RestController public class DeptConsumerController { /** * 理解:消费者,不应该有service层~ * RestTemplate .... 供我们直接调用就可以了! 注册到Spring中 * (地址:url, 实体:Map ,Class<T> responseType) * <p> * 提供多种便捷访问远程http服务的方法,简单的Restful服务模板~ */ @Autowired private RestTemplate restTemplate; /** * 服务提供方地址前缀 * <p> * Ribbon:我们这里的地址,应该是一个变量,通过服务名来访问 */ private static final String REST_URL_PREFIX = "http://localhost:8001"; //private static final String REST_URL_PREFIX = "http://SPRINGCLOUD-PROVIDER-DEPT"; /** * 消费方添加部门信息 * @param dept * @return */ @RequestMapping("/consumer/dept/add") public boolean add(Dept dept) { // postForObject(服务提供方地址(接口),参数实体,返回类型.class) return restTemplate.postForObject(REST_URL_PREFIX + "/dept/add", dept, Boolean.class); } /** * 消费方根据id查询部门信息 * @param id * @return */ @RequestMapping("/consumer/dept/get/{id}") public Dept get(@PathVariable("id") Long id) { // getForObject(服务提供方地址(接口),返回类型.class) return restTemplate.getForObject(REST_URL_PREFIX + "/dept/get/" + id, Dept.class); } /** * 消费方查询部门信息列表 * @return */ @RequestMapping("/consumer/dept/list") public List<Dept> list() { return restTemplate.getForObject(REST_URL_PREFIX + "/dept/list", List.class); } }

使用RestTemplete先需要放入Spring容器中

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wssppz.html