Java后端服务器点餐系统的部署+前端微信小程序开发(七)

云端服务器的部署

1~简单Java项目部署到腾讯云linux服务器

前面给大家讲了一个点餐系统的开发,包括java点餐后台和微信点餐小程序。可是都是教大家如何在本地把项目跑起来。今天就来教大家如何把这个点餐系统部署到服务器,实现商用。

本节知识点

  • 1,使用springboot开发java项目
  • 2,小程序后台的开发
  • 3,小程序后台部署到服务器
  • 4,java项目部署到服务器
  • 5,springboot项目部署到服务器

准备工作

  • 1,需要购买一台腾讯云服务器/(腾讯免费15天,阿里云免费两个月)
    我们默认你上面的准备工作都做好了,下面我们就来开始学习把后台项目部署到服务器,让所有人都可以访问到你的服务器。

一,首先创建一个springboot(java项目)

1,创建springboot项目,选用jdk1.8

微信小程序用java后端 微信小程序java后端部署_jar


2,填写包名,选择配置,这些保持默认即可

微信小程序用java后端 微信小程序java后端部署_jar_02


3,添加一些项目依赖,使用最新springboot版本

微信小程序用java后端 微信小程序java后端部署_java项目_03


4,项目名,项目目录设置。可以保持默认

微信小程序用java后端 微信小程序java后端部署_服务器_04


5,导入依赖,下面两种方式都可以。

微信小程序用java后端 微信小程序java后端部署_服务器_05


6,实现一个简单的后台数据接口

微信小程序用java后端 微信小程序java后端部署_服务器_06


如果上面这些简单的创建一个项目的步骤你不是很懂,可以看下我录制的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

微信小程序用java后端 微信小程序java后端部署_java项目_07

安装jdk8

yum -y  install java-1.8.0-openjdk*

微信小程序用java后端 微信小程序java后端部署_服务器_08


耐心的等待jdk的安装,大概2分钟左右,出现下面标志,即代表安装成功

微信小程序用java后端 微信小程序java后端部署_java项目_09

  • 2,检查jdk是否安装成功
    命令行里输入 java -version 出现下面标示,可以看到我们的jdk版本 1.8.0_222

五,上传jar包到服务器

我们第五步已经在linux服务器上成功的安装了jdk,接下来就是要想办法把qcl80.jar传到服务器了。部署服务器,不要在linux服务器里安装tomcat吗,其实我们用springboot开发出来的jar包,已经有内置的tomcat了。所以我们不用再部署tomcat了,只需要把qcl80.jar这个文件上传到服务器,然后用java命令启动即可。

我们上传文件到Linux服务器用下面这个软件

微信小程序用java后端 微信小程序java后端部署_服务器_10


你只需要去百度下你电脑对应系统的安装包,安装即可。具体怎么安装这里就不教大家了。

下面教下大家如何使用FileZilla上传文件到服务器。

1,打开FileZilla软件, 链接服务器

微信小程序用java后端 微信小程序java后端部署_服务器_11


2,去服务器根目录看看

微信小程序用java后端 微信小程序java后端部署_微信小程序用java后端_12


微信小程序用java后端 微信小程序java后端部署_jar_13


3,上传文件到home文件里,如果在根目录没有home文件,可以自己新建。

微信小程序用java后端 微信小程序java后端部署_java项目_14


到这里我们就成功的上传qcl80.jar到服务器了。下面就教大家如何在服务器里启动我们的项目。

六,在服务器里启动java后台项目

1,首先重复上面第四步登录服务器。然后在服务器里输入

cd..    #用来返回服务器根目录 
ls      #显示当前根目录有那些文件

微信小程序用java后端 微信小程序java后端部署_微信小程序用java后端_15

cd home     #进入home文件
ls          #显示home文件里都有那些子文件,可以看到我们的qcl80.jar

微信小程序用java后端 微信小程序java后端部署_服务器_16

2,启动java项目

java -jar qcl80.jar

微信小程序用java后端 微信小程序java后端部署_jar_17

3,项目启动成功,出现下面的标示,即代表项目启动成功

微信小程序用java后端 微信小程序java后端部署_微信小程序用java后端_18


4,访问我们服务器的项目

我们通过公网ip+8080端口,可以成功的访问到我们服务器的数据了。

  • 我们再用手机浏览器试试

可以看到我们在手机浏览器里也可以访问到后台数据了。你把上面的这个网址发给你朋友,你朋友应该也可以访问到数据了。

到这里我们就成功的把一个java项目部署到服务器,并成功的可以让任何人访问了,但是有个问题,你用公网ip做域名,很容易被封的,基本上能成功访问几次以后,就会被拒绝访问了

七,java项目在服务器后台长期运行

我们通过上面的方法,会有一个问题,就是我们命令行窗口关闭时,会导致java项目停止,所以我们要通过脚本实现java项目在后台长期运行。

springboot生成的jar在阿里云的linux服务器后台运行

微信小程序用java后端 微信小程序java后端部署_jar_19


通过创建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

微信小程序用java后端 微信小程序java后端部署_服务器_20


这个时候我们的项目就启动了