06-服务拆分-服务远程调用

  1. 单例池增加restTemplate对象
  2. @Bean
        public RestTemplate singletonRestTemplate(){
            return new RestTemplate();
        }
    
  3. 新增接口
  4. 1.新增接口类
    2.将单例池中的restTemplate对象依赖注入
    3.符合restFul规范的接口合入
    

  5. 通过远程服务调用的方式实现功能
  6. @GetMapping("{orderID}")
        public Order queryOrderAndUser(@PathVariable("orderID") Long orderID){
            String orderURL = "http://localhost:8088/order/"+orderID.toString();
            Order forObject = restTemplate.getForObject(orderURL, Order.class);
    
            String userURL = "http://localhost:8081/user/"+forObject.getUserId().toString();
            User forObject1 = restTemplate.getForObject(userURL, User.class);
    
    
            forObject.setUser(forObject1);
            return forObject;
        }
    

    由于接口与微服务接口独立 因此,并不一定要专门与某个微服务放在一起 甚至可以独立出来
    业务逻辑与微服务进一步分离

利用restTemplate,构建后端远程调用实现多服务以供业务

posted @ 2023-08-06 22:32  356a  阅读(4)  评论(0编辑  收藏  举报