Java笔记---部署 JavaWeb 项目到云服务器

1、前言

前面咱们已经尝过了在云服务器上部署代码的甜头了,如今主菜就要上场了,那就是将咱们的 JavaWeb 项目部署到云服务器上。兴奋吧?淡定淡定~php

2、项目部署

咱们对于 Java Web 项目在本地机器(不管是 Windows 仍是 Linux)上的部署已经了然于心了,那么对于在云服务器上部署 Java Web 项目又是如何操做的呢? 其实很简单,仍是离不开 Web 项目部署的那三点: 
① 基础的 JDK 环境 
② 一个 Web 服务器。如 Tomcat、JBoss 
③ 一款数据库。如:mysqljava

对于云服务器上 Java Web 项目的部署,和平时在 Windows、Linux 下部署是同样的。最多也就是只能使用纯命令模式来操做而已,其实过程都同样。mysql

2.1 环境准备

既然是 Java Web 项目的部署,首先天然须要配置好相关的环境罗。也就是:先在云主机上搭建好 Java 开发环境,如 OpenJDK 的安装、Tomcat 的安装、Mysql 数据库的安装。 
注:关于这些软件的安装就再也不该篇文章中叙述了,我会在另外的2篇文章中详细阐述的。web

2.2 项目部署

咱们要部署 Java Web 项目,那就至少得将项目上传到云服务器。其实过程很简单,基本上也就是下面三个步骤: 
① 打包上传:将项目打包成 war 文件,而后利用 FileZilla 传到远程服务器 
② 部署:使用 cp 或 mv 命令,将 war 文件移动到 Tomcat 目录下的 webapps 下 
③ 重启 Tomcat,访问咱们的项目数据库

在这个过程当中,咱们须要注意。由于通常而已,做为一个 Web 项目,咱们确定是有数据库的使用的。那么数据库部分怎么办呢?其实,只须要将咱们已有的数据库转储为 sql 文件,而后将 sql 文件上传到云服务器上执行便可。以 mysql 为例,以下操做:tomcat

Mysql 案例服务器

① 转储为 sql 脚本,并上传:先在本地将咱们项目使用的数据库转为 sql 文件,上传到云服务器上 
mysql-thinkphp1 
② 执行 sql:而后进入 mysql 中执行该 sql 文件 
mysql-thinkphp2php7

发现执行的时候有错。缘由是咱们此时的 mysql 中没有 thinkphp 这个数据库。咱们查看下当前的数据库,执行命令 show databases; 
mysql-thinkphp3

发现确实没有 thinkphp 这个数据库,所以咱们建立一个,执行命令 create database thinkphp; 
mysql-thinkphp4 
再次执行 
mysql-thinkphp5

发现仍是报错。缘由是咱们当前使用的是 mysql 这个数据库,而不是 thinkphp 数据库。所以咱们切换到 thinkphp 数据库,执行命令 use thinkphp;,而后再一次执行 sql 文件: 
mysql-thinkphp6 
③ 查看结果 
mysql-thinkphp7 
先无论显示的是乱码(由于刚才查看该 sql 文件就知道会是这个结果了),能够看到确实已经弄好了 
④ 部署项目:将项目部署到 Tomcat 容器中,仍是使用 cp 或 mv 命令将 war 文件移到 /usr/local/tomcat8/webapps/ 下,重启 Tomcat,再访问 
fw-1

能够看到成功了对吧?其实否则,由于咱们发现,须要使用数据库获取数据的部分却没有数据,这是为啥呢?错误的缘由可能有如下几个: 
① 项目中使用的是 mysql5.1.10 的驱动 jar,而云服务器默认的是使用 mysql5.1.73 所以,要么重装一个 mysql,要么将项目中的驱动改成 mysql5.1.73。 
② 未将 mysql 驱动jar 放入 jvm/java-1.8.0xxx/jre/lib/ext/ 下 
③ 密码不正确 
④ 使用的是 root 帐户,而 root 帐户在 Linux 下访问 mysql 是不须要使用密码的

经过排查,发现是由于项目中是使用 root 帐户的,所以咱们在本地中将项目代码关于数据库链接部分改一下,将密码置空串,再次部署,就能够恢复正常了,看看结果吧! 
fw-2成功显示,连上了 mysql!

相关文章
相关标签/搜索