JavaWeb项目的云服务器部署

本次是把已经在本地跑通的Javaweb项目部署到云服务器上,踩了很多坑,磨磨唧唧很长时间。我使用的服务器是阿里云的 centos7.8版本。本篇文章主要内容有:

  • 云服务器的控制台配置
  • 服务器上JDK的安装和配置
  • 数据库MariaDB的安装和远程连接
  • tomcat的安装和启动
  • JDBC连接
  • 本地javaweb部署到云服务器

都为亲测可试,欢迎补充。

一、云服务器配置

云服务器启动后并不能达到我们要的效果,首先要设置安全组,允许外网访问的端口范围。

开启的端口有:

  • 8080:tomcat的应用端口
  • 80:HTTP的服务端口
  • 3306:MariaDB数据库的访问端口
  • 443:https的端口

 之前的MySQL远程配置一直失败,可能是忘记打开了3306端口,下次需要注意。

二、JDK的安装

采用的离线解压安装方式,提前下好安装包,https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html。然后使用Xftp上传到服务器。

 再解压到自己想要的目录内,tar -zxvf jdk-13.0.1_linux-x64_bin.tar.gz  -C 目标目录。

解压后,配置环境变量,使用命令 vim/etc/profile 编辑,在最后加上如下内容。

 

 保存退出后,使用命令 source /etc/profile 重新加载配置文件。(该命令运行结束无内容)

使用 java -version 命令查看是否配置完成。

三、MariaDB的安装和远程连接

近来MySQL被收购,有闭源的风险,所以尝试了MariaDB数据的使用。该数据库完全兼容了MySQL,并且开源免费。

MariaDB的安装

采用的是在线安装。

首先输入命令:vi /etc/yum.repos.d/MariaDB.repo 在yum下添加配置文件MariaDB.repo,并编辑内容:

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

然后通过命令安装即可。

yum install MariaDB-server MariaDB-client -y

MariaDB 安装完毕后,立即启动数据库服务守护进程。

systemctl start mariadb

设置 MariaDB 在操作系统重启后自动启动服务。

systemctl enable mariadb

查看 MariaDB 服务当前状态。

systemctl status mariadb

对 MariaDB 进行安全配置

通过命令   mysql_secure_installation   进行安全配置,根据实际情况用Y/N回复以下问题:

  • 设置 MariaDB 的 root 账户密码
  • 删除匿名用户
  • 禁用 root 远程登录
  • 删除测试数据库
  • 重新加载权限表

本人全都是选择了Y,然后按回车。

 在配置完数据库的安全配置后,可以通过以下命令查看版本,确认 MariaDB已安装成功。

mysql --version

可以通过 MariaDB 命令行登录,然后对数据库进行sql查询操作。

mysql -u root -p

远程连接

输入命令,开启root用户的远程权限并刷新即可。

grant all privileges on *.* to 'root'@'%' identified by 'password' ;
flush privileges; 

四、Tomcat的安装和开启

采用的离线安装:

下载后上传到服务器,并解压到自己的目录下,即安装完成。

开启服务,进入解压好的tomcat的bin目录下。输入命令:./startup.sh开启tomcat服务。

即可在浏览器输入云服务器的IP地址加8080端口号访问。

五、JDBC连接

虽说MariaDB 和 MySQL 兼容,但也难免存在问题。

首先是MariaDB的JDBC连接,需要jar包支持,下载地址 https://mariadb.com/downloads/#connectors ,在右边选择Java的版本下载即可。

 下载得到的jar放入javaweb项目 Add as a Library即可。

代码也有需要修改的地方。

  driverClassName=org.mariadb.jdbc.Driver

  url=jdbc:mariadb://1.1.1.1:3306/dbname    填上云服务器的IP地址

import java.sql.*;

public class DBTest {

    public static void main(String[] args) {
        try {
            String driver ="org.mariadb.jdbc.Driver";
            //从配置参数中获取数据库url
            String url = "jdbc:mariadb://(1.11.1.1):3306/test";
            //从配置参数中获取用户名
            String user = "root";
            //从配置参数中获取密码
            String pass = "";

            //注册驱动
            Class.forName(driver);
            //获取数据库连接
            Connection conn = DriverManager.getConnection(url,user,pass);
            //创建Statement对象
            Statement stmt = conn.createStatement();


            System.out.println("Success!");

        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

}

并且注意,MariaDB对sql语句的大小写敏感,数据库名,表明或字段名必须都为小写,才可以,否则报错查找不到。

六、本地javaweb部署到云服务器

将项目打包成war包,然后复制进tomcat/webapps/目录下即可。

IDEA下的war包方法:

 

 然后在项目的 out 目录下即可查看到打包好的war包。

然后在浏览器地址,上面步骤的8080后面加上项目名字,即可在外网输入IP地址访问到我们的项目啦。

七、JAVAWEB的maven项目配置

1、Maven的服务器安装

Maven项目在如今越来越重要。下面是在CentOS7上安装和配置Maven的过程:

在mirrors镜像连接中,可以选择清华的镜像,这样速度会比较快:下载地址

 下载后上传到服务器,解压到相关目录,然后进行环境变量的配置:vim /etc/profile

#Maven Env
export MAVEN_HOME=/home/tools/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin

 然后 source /etc/profile,即可。

之后输入 mvn -v,出现版本号即可。

2、JAVAWEB项目的maven配置注意事项

今天在maven中,使用durid连接池总是出错,得到原因是未能访问到durid.properties配置文件。

解决方法:添加 resources 目录,并将配置文件放进去即可。参考博客地址:https://blog.csdn.net/baidu_32045201/article/details/79223386

posted @ 2020-07-31 13:17  大雪初晴丶  阅读(1111)  评论(0编辑  收藏  举报