Ubuntu上使用Tomcat部署web应用
Java的安装:
下载Java安装包
创建目录
new-virtual-machine:~$ sudo tar -zxvf jdk-8u121-linux-i586.tar.gz -c /usr/lib/jvm
解压缩到该目录
sudo tar -zxvf jdk-8u121-linux-i586.tar.gz -C /usr/lib/jvm
配置环境变量
sudo vi ~/.bashrc
或者
sudo vi /etc/profile
追加:
#set oracle jdk environment
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_121
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
环境变量生效:
source ~/.bashrc
检查JDK安装
java -version
Tomcat的安装
下载Tomcat
解压Tomcat8
sudo tar -zxvf apache-tomcat-8.5.12.tar.gz -C /usr/local
编辑Tomcat启动脚本
sudo vi /usr/local/apache-tomcat-8.5.12/bin/startup.sh
最后一行exec
之前写入JDK路径:
JAVA_HOME=/usr/lib/jvm/jdk1.8.0_121
JRE_HOME=${JAVA_HOME}/jre
CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
PATH=$JAVA_HOME/bin:$PATH
TOMCAT_HOME=/usr/local/apache-tomcat-8.5.12
修改Tomcat启动端口
sudo vi ./apache-tomcat-8.5.12/conf/server.xml
<Connector port="9000" protocol="HTTP/1.1"
在文件这修改Tomcat启动时使用的端口号端口修改完成后,重启Java和Tomcat
启动Tomcat
sudo ./bin/startup.sh
验证Tomcat配置
在浏览器中输入:http://localhost:8080/
或者
ps aux|grep tomcat
查看Tomcat服务器的Log信息:
sudo cat ./apache-tomcat-8.5.12/logs/catalina.out
Tomcat无法启动原因
端口被占用;
检查占用端口的进程PID:
lsof -i:[port]
或者
netstat -apn | grep 80
根据进程ID查看进程具体信息:
ps aux|grep [PID]
部署JavaWeb应用到Tomcat
将开发好的JavaWeb应用打包成war包
将Oracle数据库的驱动jar包上传到tomcat服务器的lib目录
将打包好的war包(MarketServer.war、UploadServer.war程序)上传到tomcat服务器的webapps目录
Tomcat服务器自动解压缩war包
Tomcat服务器自动在conf目录下创建Catalina/localhost目录并生成xml文件
MySQL的安装
安装MySQL
sudo apt-get install mysql-server
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev
验证MySQL安装情况
sudo netstat -tap | grep mysql
mysql的socket处于listen状态则表示安装成功
登陆mysql数据库
mysql -u root -p
为root用户授权所有的权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '' WITH GRANT OPTION;
创建marketdb数据库
create database marketdb;
use marketdb;
导出数据和表结构(导出整个数据库中的所有数据)
mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql
设置数据库编码
set names utf8;
将原数据库导入
source [path]
或者
mysql -u用户名 -p密码 数据库名 < 数据库名.sql
修改MarketServer.war包中
/usr/local/apache-tomcat-8.5.12/webapps/MarketServer/WEB-INF/classes
中jdbc.xml数据库连接信息,包括用户名和密码