Java后端服务器点餐系统的部署+前端微信小程序开发(七)
云端服务器的部署
1~简单Java项目部署到腾讯云linux服务器
前面给大家讲了一个点餐系统的开发,包括java点餐后台和微信点餐小程序。可是都是教大家如何在本地把项目跑起来。今天就来教大家如何把这个点餐系统部署到服务器,实现商用。
本节知识点
- 1,使用springboot开发java项目
- 2,小程序后台的开发
- 3,小程序后台部署到服务器
- 4,java项目部署到服务器
- 5,springboot项目部署到服务器
准备工作
- 1,需要购买一台腾讯云服务器/(腾讯免费15天,阿里云免费两个月)
我们默认你上面的准备工作都做好了,下面我们就来开始学习把后台项目部署到服务器,让所有人都可以访问到你的服务器。
一,首先创建一个springboot(java项目)
1,创建springboot项目,选用jdk1.8
2,填写包名,选择配置,这些保持默认即可
3,添加一些项目依赖,使用最新springboot版本
4,项目名,项目目录设置。可以保持默认
5,导入依赖,下面两种方式都可以。
6,实现一个简单的后台数据接口
如果上面这些简单的创建一个项目的步骤你不是很懂,可以看下我录制的java零基础视频:
- 7,本地运行项目
8,运行成功的标示,在run里看到控制台日志显示项目端口是 8080
9,浏览器里访问本地项目,查看访问效果。可以看到我们成功的访问到了后台数据。
二,项目打包
在idea开发者工具里启动的项目,我们正常部署服务器的时候,肯定不会有开发者工具的,所以我们接下来要先学会项目打包,然后在本地通过命令行的方式运行后台项目。
- 1,项目打包
- 2,打包成功
- 3,修改jar的名字(也可以不改名字,我是觉得这个jar名字太长,所以改一个短的)
我这里改名为qcl80.jar 建议大家也改成这个名字,因为后面运行脚本里用的就是qcl80这个名字,大家和我保持一致,省得出问题。
三,服务器环境的登录
我们前面三步,都是在自己的本地电脑启动的后台项目,这样我们只能在自己的电脑浏览器访问到,别人是访问不到的,如果想让别人访问,就需要把我的qcl80.jar这个文件传到服务器上,并且在服务器上通过命令行启动这个java项目,这样别人才可以访问到
所以我们接下来要讲服务器环境的搭建。
- 1,首先我们要买一台云服务器(推荐阿里云或者腾讯云)
- 2,买完服务器后我们登录服务器后台,这里以腾讯云为例。
- 3,点击登录
重置密码方式 - 4,输入实力的账号和密码,登录linux服务器
- 5,登录成功
大家不要看到一堆命令行,就头疼,我接下来会教大家如何一步步配置服务器环境的。大家只需要跟着我的步骤,一步步来就可以了。
四,linux服务器安装jdk
- 1,采用yum安装jdk1.8,非常简单,下面用来查看yum库中jdk的版本
yum search java|grep jdk
安装jdk8
yum -y install java-1.8.0-openjdk*
耐心的等待jdk的安装,大概2分钟左右,出现下面标志,即代表安装成功
- 2,检查jdk是否安装成功
命令行里输入 java -version 出现下面标示,可以看到我们的jdk版本 1.8.0_222
五,上传jar包到服务器
我们第五步已经在linux服务器上成功的安装了jdk,接下来就是要想办法把qcl80.jar传到服务器了。部署服务器,不要在linux服务器里安装tomcat吗,其实我们用springboot开发出来的jar包,已经有内置的tomcat了。所以我们不用再部署tomcat了,只需要把qcl80.jar这个文件上传到服务器,然后用java命令启动即可。
我们上传文件到Linux服务器用下面这个软件
你只需要去百度下你电脑对应系统的安装包,安装即可。具体怎么安装这里就不教大家了。
下面教下大家如何使用FileZilla上传文件到服务器。
1,打开FileZilla软件, 链接服务器
2,去服务器根目录看看
3,上传文件到home文件里,如果在根目录没有home文件,可以自己新建。
到这里我们就成功的上传qcl80.jar到服务器了。下面就教大家如何在服务器里启动我们的项目。
六,在服务器里启动java后台项目
1,首先重复上面第四步登录服务器。然后在服务器里输入
cd.. #用来返回服务器根目录
ls #显示当前根目录有那些文件
cd home #进入home文件
ls #显示home文件里都有那些子文件,可以看到我们的qcl80.jar
2,启动java项目
java -jar qcl80.jar
3,项目启动成功,出现下面的标示,即代表项目启动成功
4,访问我们服务器的项目
我们通过公网ip+8080端口,可以成功的访问到我们服务器的数据了。
- 我们再用手机浏览器试试
可以看到我们在手机浏览器里也可以访问到后台数据了。你把上面的这个网址发给你朋友,你朋友应该也可以访问到数据了。
到这里我们就成功的把一个java项目部署到服务器,并成功的可以让任何人访问了,但是有个问题,你用公网ip做域名,很容易被封的,基本上能成功访问几次以后,就会被拒绝访问了
七,java项目在服务器后台长期运行
我们通过上面的方法,会有一个问题,就是我们命令行窗口关闭时,会导致java项目停止,所以我们要通过脚本实现java项目在后台长期运行。
springboot生成的jar在阿里云的linux服务器后台运行
通过创建stop.sh , start.sh ,run.sh这三个脚本文件来实现后台长久运行springboot
这里我把运行的qcl80.jar ,start .sh,stop.sh ,run.sh都放在home下的jar目录下
- 1,创建stop.sh
vim stop.sh 创建文件然后把下面内容复制进去,一定要把qcl80.jar替换成你的jar
#!/bin/bash
PID=$(ps -ef | grep qcl80.jar | grep -v grep | awk '{ print $2 }')
if [ -z "$PID" ]
then
echo Application is already stopped
else
echo kill $PID
kill $PID
fi
- 2,创建start.sh,
这里我们用80端口,这样可以直接通过ip访问,不用再输端口了
vim start.sh 输入这个命令后然后把下面的内容复制进去
#!/bin/bash
nohup java -jar qcl80.jar --server.port=80 &
- 3,创建run.sh
整合了关闭和启动的脚本:run.sh,由于会先执行关闭应用,然后再启动应用,这样不会引起端口冲突等问题,适合在持续集成系统中进行反复调用。
把下面内容复制进去,一定要注意复制时不能少东西
#!/bin/bash
echo stop application
source stop.sh
echo start application
source start.sh
- 4,start .sh,stop.sh ,run.sh都创建后
./run.sh 运行run.sh脚本
如果遇到没有权限运行的问题,就在run.sh所在目录下执行
chmod u+x *.sh 这样就ok了。
执行完以后,我们可以去nohup.out文件中查看启动的log
cat nohup.out 这个命令可以查看jar启动的log
这个时候我们的项目就启动了