springCloud之部署配置中心、配置微服务间的通讯(RestTemple/Feign)、小项目:选课系统初实现

部署配置中心

在这里插入图片描述
假如说订单服务,以后需要做水平拓展。(什么是水平拓展?)
水平拓展:一台服务器处理性能有限,可以部署多台,这就是水平拓展
水平拓展的情况下,当某一天我一台服务器的属性做了改动,所有服务器都要跟着修改。维护起来很复杂。这个时候可以通过部署配置中心,来管理我们的配置信息,所有的服务都到配置中心里面查找,以后涉及到修改服务器属性,比如密码什么的,可以直接在配置中心里面修改即可,所有服务都到配置中心去拿配置。

国外使用GIT 国内使用码云 Gitee
在这里插入图片描述
注册登陆后,新建仓库
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以在这里面配置端口,数据库连接信息 rabbitmq连接信息等等
在这里插入图片描述
提交
在这里插入图片描述
这样就配置完了。
在这里插入图片描述

如何使用配置文件?
创建一个新的项目,把配置中心注册到注册中心内。

在这里插入图片描述
在这里插入图片描述

复制仓库的地址 ,注意是仓库
在这里插入图片描述
在这里插入图片描述
、这样就注册到注册中心去了
在这里插入图片描述
这样以后,在需要使用配置中心的配置数据的时候,就会自动到远程仓库去读取已经写好的配置

现在来访问,发现是404
在这里插入图片描述
是因为,配置中心仓库里面除了要有配置文件,进行配置的时候必须要指定环境的后缀,所以除了主配置文件之外,里面还需要建一个文件
在这里插入图片描述
文件名的前缀必须要和注册中心里面注册的客户端名称一致。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
现在访问就可以看到了。可以通过网关(端口:9000)访问
在这里插入图片描述
在这里插入图片描述
也可以通过客户端(端口:9100)访问
在这里插入图片描述
这边能访问到了,说明可以从配置中心拿到数据了。

现在开始部署客户端,我们把从配置中心拿配置这些项目称为配置中心的客户端

添加依赖
在这里插入图片描述
在yml文件里面添加配置:

在这里插入图片描述
在这里插入图片描述
运行,发现问题:
在这里插入图片描述
问题一个可能是pom文件里面的父文件的版本号过高,该版本不稳定,可以尝试改成低的版本。

二:application.yml文件的优先级不够高

在这里插入图片描述
创建bootstrap.yml配置文件,它的运行优先级要高于application.yml
在这里插入图片描述
在这里插入图片描述
剪切过来
现在就可以了。8888就是我们仓库里面client-dev里面配置的端口
在这里插入图片描述


微服务间的通讯

在整个微服务体系架构中,如果服务于服务之间进行互相调用,该如何实现?

方法一:RestTemplate

在这里插入图片描述

方法二:Feign

在这里插入图片描述

这里介绍第一种RestTemplate

首先把它注册到注册中心在这里插入图片描述
配置yml文件
在这里插入图片描述
在仓库创建对应的配置文件
在这里插入图片描述
指定8081
在这里插入图片描述

实现:

设置功能接口:提供查询员工业务功能“:

在这里插入图片描述
创建实体类,实现序列化接口
在这里插入图片描述
在这里插入图片描述
不要忘了加注解,现在来启动一下测试接口是否可以正常使用
在这里插入图片描述
导入web依赖
在这里插入图片描述
视频断了–不知道后面是什么 可以参照代码08-14myserver

注意:如果要使用配置中心,就要把把appliction.yml改成bootstrap.yml


小项目:选课系统

1.建立微服务–会员中心

配置连接数据库

现在配置的时候 加上mysql mybatis依赖
在这里插入图片描述

在这里插入图片描述
创建实体类
在这里插入图片描述
会员这里有一个验证功能,验证手机号码

在这里插入图片描述

在这里插入图片描述然后在mapper里面写查询方法

在这里插入图片描述
写controller

在这里插入图片描述

在这里插入图片描述
既然用到了配置中心,就把yml文件里面的一些公用的配置写到仓库里面
在这里插入图片描述
创建member-dev.yml里面为空
在这里插入图片描述在这里插入图片描述

打开注册中心、网关、配置中心。
在打开member文件。

使用idea的测试工具
在这里插入图片描述
在这里插入图片描述
左上角执行
在这里插入图片描述
报错404
在这里插入图片描述
发现是忘了导包了web starter的依赖包了
在这里插入图片描述
在这里插入图片描述

建立微服务:课程中心

老套路course-dev.yml 、

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

创建两个实体:一个订阅表 一个课程表
在这里插入图片描述
在这里插入图片描述
业务层接口创建方法
在这里插入图片描述
写实现类:里面重写方法(注意要自己autowired CourseMapper 图中没截)
在这里插入图片描述
在这里插入图片描述
创建Controller 实现业务功能
在这里插入图片描述
验证:
在这里插入图片描述

接下来实现预约功能:
Controller:
在这里插入图片描述
因为要传入日期类信息,在配置文件中添加日期格式配置
在这里插入图片描述
业务层创建方法:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
注意,这个自定义异常界面依然是alt+insert 然后Override Methods 选中前五个
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
然后接下来,需要来检查手机号码,需要进行远程调用。
导入openfeign
在这里插入图片描述
在这里插入图片描述

这个课程中心里面的项目要调用另外一个微服务里面的方法,然后这里就需要自己定义接口
在这里插入图片描述
因为在member微服务里面 实体类叫Member 这里要求不能重名,所以自己定义MemberDTO,里面的属性和member是一致的。
在这里插入图片描述
还需要提供RestResult和Member微服务里面进行匹配(Member里面返回 是一个Map,这里使用RestResult来进行封装,下面有图)
当然也可以不使用RestResult,还是使用MAP。但是取数据不方便
在这里插入图片描述
RestResult:状态码,返回的消息,还有一个member对象(这里名为data)
在这里插入图片描述

在这里插入图片描述
现在回到业务层实现类里:实现远程调用
在这里插入图片描述
在这里插入图片描述

验证完就可以添加数据了,这里就没写了

  • 0
    点赞
  • 3
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:技术工厂 设计师:CSDN官方博客 返回首页
评论

打赏作者

Endure95

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

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

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

打赏作者

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

抵扣说明:

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

余额充值