将Javaweb项目部署到云服务器
一、前言
由于业务需要,要搞一个文件上传下载服务器,代码当前已经在localhost上调试成功。现在需要把这个项目部署到云服务器上,选择的服务器是vultr的vps,系统是Ubuntu16.04。
二、环境准备
1.jdk安装
常规安装即可,注意使用wget jdk文件时用如下命令(accept license aggrement):
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.tar.gz
注意替换下载链接
环境变量配置参考:
2.tomcat安装
sudo apt-get install tomcat8 tomcat8-docs tomcat8-examples tomcat8-admin
#启动 service tomcat8 start #状态 service tomcat8 status #停止 service tomcat8 stop #重启 sudo service tomcat8 restart
安装目录为 : /var/lib/
3.mysql安装
三、项目部署
1.JavaWeb项目部署到服务器
我们要部署 Java Web 项目,那就至少得将项目上传到云服务器。基本是下面三个步骤: ① 打包上传:将项目export打包成 war 文件,然后利用 Xshell的ZMODEM 发送到远程服务器(apt-get install lrzsz 能大幅度提高传输速率) ; ② 部署:使用 cp 或 mv 命令,将 war 文件移动到 Tomcat 目录下的 webapps 下 ; ③ 重启 Tomcat,访问我们的项目;
2.数据库远程连接和访问
(1)用navicat远程连接服务器数据库
navicat使用非常简单,功能非常强大;只需要填入ip,port,用户名,密码即可连接mysql;(前提是在mysql中给该用户授权远程连接了)
(2)java代码访问服务器数据库
import java.sql.*; import java.util.Scanner; public class DBConnector { public static final String URL="jdbc:mysql://127.0.0.1/test";//替换ip和数据库名 public static final String DRIVERNAME="com.mysql.jdbc.Driver"; public static final String USERNAME="user_test";//已授权远程连接的用户 public static final String USERPASS="123456"; public Connection conn=null; public PreparedStatement pst=null; public ResultSet rs=null; public DBConnector(String sql) { try{ Class.forName(DRIVERNAME); conn=DriverManager.getConnection(URL,USERNAME,USERPASS); pst=conn.prepareStatement(sql); }catch (ClassNotFoundException e){ e.printStackTrace(); }catch (SQLException e){ e.printStackTrace(); } } public void close(){ try { pst.close(); conn.close(); } catch (SQLException e) { e.printStackTrace(); } } public static void main(String[] args) { System.out.println("请输入id: "); Scanner scan = new Scanner(System.in); int id = scan.nextInt(); String sql="select * from student where id="+id+""; DBConnector dbc=new DBConnector(sql); int resultSize=0; try { dbc.rs=dbc.pst.executeQuery(sql); while (dbc.rs.next()){ System.out.println(dbc.rs.getString("id")+" " +dbc.rs.getString("name")); resultSize++; } if(resultSize==0){ System.out.println("查询结果为空!请输入正确的id"); } } catch (SQLException e) { e.printStackTrace(); }finally { dbc.close(); } } }
3.远程访问网站
测试网址:
访问的网站地址
参考博客: