不同端口的远程调用

Spring Cloud将服务模块化,实现了编码解耦,各个模块只能访问该服务下的数据库,但最后都需要将数据合并,发给前端,这时候就需要用到远程调用。

一、RestTemplate注解开发

 1、第一步,注册RestTemplate对象

 2、第二步,注入bean,调用方法。

 GET、POST、DELETE、PUT、四种请求方式都有,这里以GET为例。

拼接URL路径,传入方法参数。

 3、重启服务,测试

 红框内的user对象就是我们通过远用获得的。

当然,缺点也是显而易见的,就是硬编码问题,因为它的url路径是手动拼接的,一旦路径有所变动,对于后期的维护都是极其不便的。

二、客户端Feign

1、导入依赖

2、在调用者服务的启动类上添加@EnableFeignClients注解

 3、声明Feign接口,封装所有对目标接口发起的远程调用

 “userservice”是服务名,通过注册服务配置,相当于原路径中的“localhost:8080”,这里将其封装以后,未来地址或是端口的变动都不会影响该远程调用工作。

 4、装配bean,调用方法

 5、运行测试

 有效解决了硬编码问题,当然,Feign还有更多的其他功能,关于配置服务以及性能优化。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值