3-springcloud服务与服务之间的调用二(RestTemplaye)

首先这里是基以前的项目开始 [ 有详细的步骤,大家可以先看看 ]
第一步:创建一个product的模块,一直点下一步知道完成;在这里插入图片描述第二步:找到pom.xml更改版本为(2.3.12.RELEASE)在这里插入图片描述
第三步:在pom.xml中添加两个依赖
在这里插入图片描述
具体依赖如下:

<!--        client 依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
            <version>2.2.8.RELEASE</version>
        </dependency>

<!--        web 依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

第四步:在 application.properties 中写配置文件
在这里插入图片描述
第五步: 新建一个controller包,写一个ProductController类

  • 第二种调用用户服务的方法是用 RestTemplaye的方式
  • 把一个RestTemplaye的模块给IOC管理起来
  • (需要加上负载均衡的注解 @LoadBalanced,不然找不到路径)
  • 它是spring框架提供的内容
  • 我们不能使用它的原因是因为spring 启动的时候只会加载核心组件(IOC…)
  • 我们要去注册它,实际上就是注册bean
  • 为什么需要配置bean(因为要被IOC容器管理起来)
  • bean配置的三种方式
    配置文件
    注解
    配置文件+注解
    在这里插入图片描述
    具体代码如下:
package sunjob.springcloud2022product.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class ProductController {

    @RequestMapping("/product")
    @ResponseBody
    public String productQuery(){
        return "productQuery:";
    }

}

第六步:这里我们需要先在 Springcloud2022ProductApplication 中注册RestTemplate 模板
重点注意这里需要: @LoadBalanced //绑定一个负载均衡注解(不绑定会找不到服务)
在这里插入图片描述
具体代码:

package sunjob.springcloud2022product;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.web.client.RestTemplate;

@SpringBootApplication
@EnableDiscoveryClient
public class Springcloud2022ProductApplication {

    @Bean
    @LoadBalanced //绑定一个负载均衡注解(不绑定会找不到服务)
    public RestTemplate getTpl(){
        return new RestTemplate();
    }

    public static void main(String[] args) {
        SpringApplication.run(Springcloud2022ProductApplication.class, args);
    }

}

第七步:返回ProductController类,使用RestTemplate模板
在这里插入图片描述
第八步:先运行Springcloud2022RegistercenterApplication(启动类)
在这里插入图片描述
输入网站访问
在这里插入图片描述
再运行user服务和product服务的启动类
运行后可以在注册中心查看
在这里插入图片描述
第九步: 访问 http://127.0.0.1:4044/product;运行成功 ✿✿ヽ(°▽°)ノ✿
有什么问题欢迎大家提出交流
在这里插入图片描述

世界灿烂盛大,欢迎回家 —— 《全球高考》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

季淳卿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值