问题现象:
今天在学习微服务架构的过程中,思考着:
如何实现微服务间的通信呢?
问题分析:
在学习中我遇到了一种很简单的通信方法,在这里和大家分享一下:
在最初学习Spring的时候,我们常常会使用 HttpClient 或者 Httpurlconnection 来实现外部服务的接口调用,但是代码太过冗余.
这里给大家介绍一种方法: RestTemplate ,既方便又快捷!
首先,在启动类中用 @Bean 注册 RestTemplate对象
然后就可以在Controller层 中,注入 RestTemplate 对象
通过调用该对象的方法即可调用对应服务的接口了:
这里简单提一下:
get请求的方法有: getForEntity 和 getForObject(url地址,接口返回的数据类型)
post请求的方法有: postForLocation 和 postForObject
注意:
这里提一下: 一种极其常用的组件 Feign ,用于微服务间的调用,而且比RestTemplate会优化和方便一些;
但是只能调用已注册的微服务接口,不能像RestTemplate 一样随意调用外部的服务接口.