00:00
好,那我们接下来呢,我们来看一下如何来部署这个项目啊,因为我们现在呢,已经把,呃,就是说。呃,这个仓库呢,都给它克隆下来了,呃,当然就是说这个仓库里面呢,包含了我们前端和后端的所有代码,呃,那么我在read me这个markdown文件里边呢,呃,写了如何去部署我们的这个项目,对吧?写了如何去部署我们的这个项目,所以说我们现在的话呢。我们来看一下基于已有的代码呢,如何把它部署起来,呃,当然在这里边的话呢,呃,我们项目的这个部署方法呢,我们首先来看对吧,首先我们把这个仓库克隆下来以后呢。我们使用太利这idea对吧?也就是idea这样的一个IDE呢,呃,把这个云台杠八汉的作为ma问项目打开,实际上就是打开它的呃POM点叉ML文件对吧?POM点叉M文件,然后运行云台application.java中内函数,实际上就把这个呃后台项目跑起来了,所以说在这里边的话呢,呃,当然我们在这的话,我们可以CD到这个idea里边,因为我这个用的是Linux系统对吧,就是乌班图,呃所以说我是这样来启动idea的,然后CD到B里边,然后点斜杠idea.sh啊那么这样的话呢,我们就把这个呃项目呢启动了起来。
01:38
呃,当然在这的话呢,我默认打开的这个项目呢,就是云台杠八看的,呃,那么如果大家使用idea这个IDE,它第一次打开这个项目的时候呢,呃,那应该怎么去打开它呢?呃,那在这里边的话呢,我们首先,呃,实际上可以说是先把这个项目给关掉,对吧,我们来演示一下,诶第一次打开应该是长一个什么样子,对吧,我们首先关闭项目。
02:09
啊,那么关闭了项目以后呢,然后点击打开。对吧,然后呢,在云台这个仓库里面,我们双击,然后双击云抬杠back,然后点击POM,点叉ML,然后点确定对吧?那么这里边的话呢,会给大家一个选项,就是是否作为项目打开,当然我们是要作为项目打开了。啊,那么作为项目打开以后呢,然后在这里边我们选择云台application,当然你呃,肯定是要把POM文件里面的所有的依赖都给它下载下来,对吧?呃,你是要需要把这个POM文件里面的依赖呢,都给它解决掉啊都给它解决掉,然后解决掉以后呢,然后双击云台application,然后点击这个main函数,然后运行它,呃,其实就可以启动起来了。
03:05
啊,当然之前我们说过说我们的这个项目实际上呃很显然它还是依赖了呃我们的数据库,呃所以说呢,在这个文档里边的话呢,后面其实就是教大家如何把这个数据库呃给它搭建起来,对吧?因为你呃如果数据库搭建不起来的话呢,呃你这个项目肯定也是没有办法跑的,呃当然在我的本地的话呢,实际上我已经把数据库呢都搭建好了,呃但是我们后面再讲的话呢,我们会给大家讲一下,就是说如何把这个数据库呃对吧,给他搭建起来,或者说它每一张表,它到底呃代表的是什么意思,它到底代表的是什么意思,我们现在启了后端项目以后呢,我们来看一下前端项目如何启动,对吧?我们要启动前端项目的话呢,首先要记得安装node JS的最新版。
04:01
啊,那我这里边的话呢,我node JS的版本呢,是16啊,当然现在可能已经升级到18了,如果你安装的是node js18的话呢,呃。你可能需要在终端里面输入这样的命令,比方说你在Windows里边,对吧?你打开了一个CMD,呃,这样的一个终端,那么你需要将node_options设置为杠杠open s SL-legacy,杠provider。对吧,如果你在Linux或者ma下面的话,你需要使用export命令来设置这个环境变量,呃,也就是说note js18以上的话呢,是你需要呃去设置这样的环境变量,当然你如果用的是note JS,比方说16,呃,可能17它也不需要设置这个呃命令,对吧?当然就是note JS你是必须要装的啊,那么装完以后的话呢,呃,我们在这里边对吧。
05:01
我CD到云台,然后CD到这个云台杠front and下面,当然我在这的话呢,我note-V你可以看到,呃,我本地装的note JS呢是16:15这样的一个版本,然后呢,接下来我们CD到这个里边,你设置完环境变量以后呢,你就可以n PM install。那么n PM install它的作用是什么呢?它的作用是解决我们前端的呃依赖问题,解决我们前端的依赖问题啊,也就是说呃,我们的这个后端的项目,它实际上用的是,因为我们都知道这个ma项目它用的是POM文件来进行管理的,对吧?呃,POM文件来进行管理的,那你使用idea把它打开以后呢?呃,那么它就会根据你POM文件里边所。呃,设置的这些依赖呢?呃,那么他就会帮你下载下来,然后给你解决掉,对吧?根据它的版本号,那么前端的项目的话呢,那么目前为止它使用的呃是什么呢?我们来看一下云台杠front and里边呃有一个。
06:13
叫做package.jason这样的一个文件,对吧?那么这个文件有一个dependencies,还有一个dev dependencies。那这个dependences呢,就是我们运行这个项目所要用到的依赖,而Dave dependences呢,就是我们开发这个项目所用到的依赖,对吧?也就是说我们Java的项目呢,使用的是POM点叉ML文件来管理这个呃依赖的,而前端的项目呢,使用的是package Jason这样的一个Jason呃文件来管理前端的依赖,对吧?那么你要怎么去安装这个依赖呢?那就是按照我文档上所说的。呃,什么呢?我们来看一下,按照文档上所说的就是n PM install。
07:00
对吧?Npm in install,那么它会把所有的依赖呢,都安装到node_modus这个文件夹里边,呃,当然在我本地的话呢,其实我已经安装好了,所以说我其实不需要执行这一步,但是你们呃,要安装它所有的依赖的话呢,是需要NPM空格install来把所有的依代都安装一下的,然后呢,执行n PM run deve呢,就会把我们前端的项目呢给它跑起来,对吧?在这里边比方说我如果执行一个NPM道,呃,那么它会开始安装依赖,当然因为我已经安装好了,所以说这很快就就结束了,呃,那么我如何去把这个依赖跑起来呢?或者说我如何去把这个前端项目跑起来,那就是NTM run带。那么他就会对我的前端项目呢进行一个打包。啊,那么我们现在前端呢,它实际上主要是流行一种叫做单页面应用,也就是single配置application,对吧,那在这里面的话呢,你可以看到。
08:02
呃,它就自动跑起来了,对吧?呃,也就是说前端的项目呢,它是跑在呃lo克霍S的冒号9528,呃这样的一个IP地址的,这样的一个IP地址的,也就是说我们现在它前端项目是怎么样子呢?呃,实际上前端项目它也会起一个服务器,比方这是我们前端项目它的呃这个地址,它的这个是一个前端项目,对吧?啊那么这个前端项目呢,它会启动一个叫做express的这样的一个呃后端服务,那么这个express的后端服务呢,它是起在我们在配置文件里面写了呢,它起在9528里,呃这个端口。对吧,起来9528这个端口,也就是说实际上我们现在呃,开发的这个项目的话呢,它前端项目的呃,请求它是发送到了express。
09:01
啊,也就是local的9528这个IP地址对吧,然后呢。Express这个项目,呃,Express这个后端框架对吧,或者说在local host冒号9528这个IP地址跑起来的,Express这个服务呢,它会把前端发过来的请求再转发到spring BOO。对吧,这个后端,呃,而spring boot呢,它本身它是默认是监听在local hosts的8080,呃,这是IP地址的对吧,就是在这发过来的请求呢,它会进行一个转发对吧,转发请求,呃,转发请求。那么,当spring不。他接收到转发过来的请求以后呢,他就会在数据库里边把数据都取出来,对吧,然后返回给。
10:04
Express这个图对吧,那这个就是返回响应啊,那么spring boot将响应返回给express以后呢,那这个express它会把这个响应再转发给前端项目,再转发给前端项目。诶,转发讲义啊,那么有同学就会想了,就是说我们前面讲的不是说,诶这个前端直接发送请求给spring boot,然后spring boot在数据库里边查找数据,然后直然后查出来的数据呢,包装成响应返回给前端吗?为什么这又多了一个转发层呢?呃,那这个实际上是,呃,就是说现代的前端开发,其实它都会起一个呃,Express这样的一个服务,对吧?然后呢,Express这个服务呢,他负责转发前端发过来的请求,然后负责转发spring boot,也就是说这个真正的后端对吧。
11:08
返回的响应,呃,实际上这个express这样的一个服务呢,它有点类似于一个中间键,呃,那么为什么要这么做呢?那主要就是呃,由于我们的这个express服务它也是部署在本地的,所以说你的前端项目把请求发给express服务,然后express服务再把请求发给spring boot呢?呃,那这样的话呢,就避免了跨域方面的一些配置对吧?避免了,呃,就是说跨域方面的一些配置,跨域或者说叫做什么Co ors的一些配置,对吧?所以说大家其实不用太管这些东西啊,它主要就是方便我们不需要设置呃跨域方面的一些东西对吧?所以说你在这儿你就可以看到说,诶我们的这个IP地址呢,它是9528,实际上呢,你是把这个请求,也就是我前端我点击一个按钮对吧?
12:07
那么当我点击按钮的时候呢,我们向spring boot发送请求,实际上它是把请求发到了express这个服,然后express这个服务呢,再把请求转发给BOO,对吧,转发给spring BOO啊,那这样的话呢,其实我们就把我们的项目跑起来了,当然大家要注意的就是一定要根据后面的。呃,这样的一些指南呢,来把数据库给它跑起来,来把数据库给它跑起来,对吧?也就是说你不把数据库跑起来的话呢,虽然你的后端服务可以运行起来,呃你的前端呢也可以跑起来,但是你在点击这些按钮的时候,你取不到任何数据,对吧?因为这些数据它本身是呃从后端的,呃就是说一些数据库,比方说买S啊,或者说click house啊,或者说new for这样的呃图数据库里边把它取回来的,所以说你要按照我这里写的文档呢,把数据库呃给它呃部署起来,对吧?把数据库给它部署起来啊,因为我们这里边用到的数据库呢也比较少,所以说部署起来的话呢,呃相对来说也比较简单啊,那这里边的话呢,我后台主要依赖的数据库是买SQ click house以及new forg啊,那么对于买s click house的话呢,那大家之前应该已经学过了。
13:34
呃,也就是说如何去安装买cql click house,那我们在讲到数据选这个模块,由于它要用到new for g这样的一个呃图数据库,所以说我们会讲一下呃,如何去安装new forgg g,呃,当然其实new forg这个数据库呢,呃,它本身也是比较简单的,它安装起来对吧?呃,我们现在其实就可以看一下,呃,那对于new来讲的话呢。
14:01
我们如何去安装它呢?首先你要保证的是什么?你要注意的是你的系统的JDK版本必须是JAVA11以上,对吧?呃,因为我们大多数国内的开发可能目前都还在使用JAVA8,呃,但是new fog的最新版本呢,它要求你呃系统的JDK的版本,或者说Java的版本,它必须是JAVA11以上啊,或者说必须是JDK01:11以上,对吧?所以说这个大家要注意,就是你一定要把你的呃本地的这个JDK的版本呢,替换成JAVA11以上,然后呢,在网址,在这个网址这里我们就可以。去下载对应的什么呀,New for的社区版对吧,也就是在这里边你可以点你可以。呃,进入到这个网址对吧?进入到这个网址,然后呢,在这个网址里边呢,我们可以看到这儿有一个Windows版本的可执行的压缩包,或者说Linux版本的可执行的,呃,就是说压缩包对吧?所以说你可以根据你操作系统的平台呢,去点击这个zip或者说这个T对吧,来下载对应的呃,New for g的,呃就是说系统版本对吧?啊当然我这边我就用的Linux,你可用可能用的是Windows,所以说你要用Windows的话呢,你就右键诶把这个zip下来,然后解压对吧,你如果用的Linux的话呢,那你就把这个T压缩包,呃给它压缩下来,然后呃给它下载下来,然后进行解压,对吧,那么解压以后呢,你要CD到。
15:47
什么呢?CD到解压缩后的new for j啊文件夹,CD到for文件夹,然后使用点斜杠并斜杠new forg start来把这个new forg呢给它启动起来,给它启动起来,这样就我们就可以启动啊new forg的数据库版本了啊,当然你启动完了以后呢,它的默认的用户名和密码对吧?它默认的用户名和密码呢,是一个呃叫做。
16:20
New forg,也就是说我们的它默认的用户名是new forg,那么默认的密码也是new for j。啊,对吧,那么你在第一次登录的时候呢,它需要你把用户名和密码,呃,尤其是密码你可能需要改一下,对吧,第一次登录的时候呢,它需要你呃修改密码,需要你修改密码,然后呢,你就可以在local host的7474这个网页呢,来操作我们的呃new for数据库了,来操作我们的new for数据库了,好比方说我在这里边。
17:03
你就会发现,哎,这样的话呢,你只要new for这样的一个服务启动成功了的话呢,那么它就会你就可以访问这样的一个页面了,对吧,就像类似于像have呀,或者说search啊等等等等,其实我们都可以呃,通过网页的方式来操作呃这个数据库,那么安装new for,这主要要注意的一点就是第一是。你JDK的版本必须是JAVA11以上啊,那么第二个的话呢,就是说。你下载完这个压缩包,然后解压进去以后。然后启动之后呢,需要修改密码对吧?需要修改一下密码,大家如果说诶呃,我不是特别清楚怎么修改密码的话,实际上呃,你启动起来,然后通过这个网页访问,呃就可以大概的看一下对吧?或者说在网上搜一下,其实呃就可以知道对吧?那到时候我们在讲这个的时候呢,我们就下载一个压缩包,然后来演示一下如何把它啊,就是说如何去修改密码呀,如何把它启动起来啊等等啊这样的一些知识啊,那么前面的这样的一些部署方式呢,那主要就是在买CQ和click house里面去建一些表,建一些数据库和表,然后插入一些呃测试数据对吧?那么比方说数据库的名字呀,表的名字呀,包括插入的这些数据呢,其实我都已经呃提供好了,那大家照着这个做就可以了,那么这样的一个流程下来呢,就可以把我们的中台项目呢,给它部署起来。
18:39
就可以把我们的仲裁项目给他部署起来啊,那由于我们本次本次项目呢,主要讲解的是后端,呃所以说的话呢,呃,当然我们这个后端代码呢,其实都已经提供给大家了,呃但是为了比较深入的讲解的话呢,那这里边的话,呃,我可能还是会选择说把这个项目我们新开一个呃,Main项目,然后把这个项目给它,呃从零呢,给它敲一遍对吧,从零给它敲一遍,当然前端页面在这里边的话呢,我们就可以呃直接放在这儿对吧,我们直接把呃,我在讲解的时候呢,直接把后端替换成我新敲的后端,呃当然和我已经提供的这个后端代码呢,它几乎是一样的,对吧,基本上是一样的,我们只需要把这个后端替换一下呃就可以了,所以说我们这次主要还是,呃,就是说主要还是一行一行的去讲解这个后端的代码,然后把。
19:39
把写出来,然后把它跑起来对吧?啊那这样的话呢,大家就知道,呃,我们的这个中台,它主要是干一件什么样的事情,对吧?主要是干一件什么样的事情,呃也就是说我们写代码呢,最好还是你自己把呃这个项目对吧,比方这个后端我从零把它给写出来,呃可能你的理解会更深入一些,并且呃会呃更加保险一些,对吧,会学到的东西会更多一些。好,那我们下节课开始呢,就开始写代码。
我来说两句