案例需求:

修改order-service中的根据id查询订单业务,要求在查询订单的同时,根据订单中包含的userId查询出用户信息,一起返回。

因此,我们需要在order-service中 向user-service发起一个http的请求,调用http://localhost:8081/user/{userId}这个接口。

大概的步骤是这样的:

  • 注册一个RestTemplate的实例到Spring容器

  • 修改order-service服务中的OrderService类中的queryOrderById方法,根据Order对象中的userId查询User

  • 将查询的User填充到Order对象,一起返回

2.3.2.注册RestTemplate

首先,我们在order-service服务中的OrderApplication启动类中,注册RestTemplate实例:

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.web.client.RestTemplate;@MapperScan("cn.itcast.order.mapper")
@SpringBootApplication
public class OrderApplication {public static void main(String[] args) {SpringApplication.run(OrderApplication.class, args);}@Beanpublic RestTemplate restTemplate() {return new RestTemplate();}
}

实现远程调用

修改order-service服务中的包下的OrderService类中的queryOrderById方法:

服务拆分-服务远程调用相关推荐

  1. 【学习日记2023.6.9】之 SpringCloud入门(认识微服务_服务拆分和远程调用RestTemplate_Eureka注册中心_Ribbon负载均衡_Nacos注册中心)

    文章目录 SpringCloud 1. 认识微服务 1.1 单体架构 1.2 分布式架构 1.3 微服务 1.4 SpringCloud 1.5 总结 2. 服务拆分和远程调用 2.1 服务拆分原则 ...

  2. 【黑马-SpringCloud技术栈】【02】服务拆分及远程调用_服务提供者与消费者

    持续学习&持续更新中- 守破离 [黑马-SpringCloud技术栈][02]服务拆分及远程调用_服务提供者与消费者 SpringCloud引入 服务拆分及远程调用 服务拆分原则 服务拆分De ...

  3. Day02 - 服务拆分及远程调用

    服务拆分及远程调用 1.服务拆分 - 案例Demo 不说那么多,直接上代码 2.微服务远程调用 1.服务拆分 - 案例Demo 服务拆分注意事项 不同微服务,不要重复开发相同业务 微服务数据独立,不要 ...

  4. 服务拆分和远程调用(微服务)

    博客主页:踏风彡的博客 博主介绍:一枚在学习的大学生,希望在这里和各位一起学习. 所属专栏:SpringCloud 文章创作不易,期待各位朋友的互动,有什么学习问题都可在评论区留言或者私信我,我会尽我 ...

  5. 【微服务】服务拆分和远程调用

    2.1 服务拆分原则 这里总结了微服务拆分时的几个原则: 不同微服务,不要重复开发相同业务 微服务数据独立,不要访问其它微服务的数据库 微服务可以将自己的业务暴露为接口,供其它微服务调用 2.2 服务 ...

  6. 微服务的服务拆分和远程调用

    2.1.服务拆分原则 这里我总结了微服务拆分时的几个原则: 不同微服务,不要重复开发相同业务 微服务数据独立,不要访问其它微服务的数据库 微服务可以将自己的业务暴露为接口,供其它微服务调用 2.2.服 ...

  7. 微服务(二)服务拆分及远程调用

    1. 服务拆分原则 不同微服务,不要重复开发相同业务 微服务数据独立,不要访问其它微服务的数据库 微服务可以将自己的业务暴露为接口,供其它微服务调用 2. 服务拆分示例 微服务cloud-demo为例 ...

  8. 微服务采用何种远程调用方式?

    无论是微服务还是SOA,都面临着服务间的远程调用.那么服务间的远程调用方式有哪些呢? 常见的远程调用方式有以下几种: RPC:Remote Produce Call远程过程调用,类似的还有RMI.自定 ...

  9. 微服务之Feign远程调用

    微服务之Feign远程调用 1.微服务之间一般都是业务分离,会创建一个独立的模块来存放接口,方便以后调用,以及防止代码的冗余和降低耦合性 2.导入feign的依赖 <dependency> ...

  10. 微服务的拆分和远程调用

    1.服务拆分原则 不同微服务,不要重复开发相同业务 微服务数据独立,不要访问其它微服务的数据库 微服务可以将自己的业务暴露为接口,供其它微服务调用 2.服务拆分示例 cloud-demo:父工程,管理 ...

最新文章

  1. 人工智能元老痛批IBM:沃森是个骗局,这根本不是认知
  2. 想学python-为什么现在那么多人想学Python?
  3. PHP的异常处理异常捕获错误类
  4. securecrt连接GNS3步骤
  5. 【转载保存】IDEA maven中添加本地jar包
  6. 广播信道的数据链路层和CSMA/CD协议
  7. 一个类中域(field)的首字母不要大写
  8. 数据引用Data References
  9. 火车票放票时间 潜规则
  10. getbook netty实战_Netty 实战(精髓)简介(Netty in Action)
  11. 第一道web类CTF题——一起来撸猫
  12. (待优化)python入门
  13. fullPage.js使用
  14. 搭建AdGuard Home广告拦截DNS解析服务器
  15. win10睡眠状态下唤醒花屏
  16. EPICS Linux/Unbuntu 的安装说明(入门级)
  17. JS计算日期天数之差
  18. 虚拟环境mkvirtualenv指令
  19. Angular 2+ Material Design Admin Template
  20. 某34岁程序员求助:从美团L7跳到阿里P7,涨薪30%,去不去?

热门文章

  1. wince -- telnet登陆密码的取消
  2. Optimize a Flex application using deferred instantiations
  3. SQL语句判断指定的数据库、表、字段、存储过程是否存在
  4. Ultraedit使用技巧收集
  5. go 安装墙外的依赖包报错问题
  6. P2324 骑士精神
  7. [LeetCode] Generate Parentheses
  8. Nancy 寄宿OWin
  9. maven依赖传递和排除依赖冲突
  10. Silverlight Telerik控件学习:数据录入、数据验证