一.相关概念简介

1.java容器:用于存放与运行java代码的环境。

java容器

描述

tomcat

常用,功能完善

东方通

国产java容器

weblogic

用于oracle环境

jetty

功能少,轻量

2.JVM-JRE-JDK及三者的关系

java代码可移植性,一次编译到处运行。

JVM:java虚拟机,运行java代码的地方,占用内存。
JRE:Java Runtime Enviroment,提供java运行环境,提供JVM环境和java命令。
JDK:Java Development Kit, 提供java开发环境,JVM+JRE+额外功能。Linux换将只需部署JDK。
  • 1.
  • 2.
  • 3.

tomcat相关概念与部署_JAVA

3.JDK版本

目前主要版本:常用的JDK1.8 就是JDK8,jdk-8u351是jdk8的更新版,更新的版本号351。

jdk1.8.0_351也是jdk8,更新版本351。

二.部署

0.安装方式

rpm包安装:安装的为openjdk版本

二进制包:软件绿色版,解压既用,安装的oracle jdk版本

源码:编译安装

 官方软件包下载地址

1.环境准备

web01

192.168.77.142

web02

192.168.77.141

db01

192.168.77.139

2.部署jdk-8u351

 下载jdk-8u351-linux-x64.tar.gz软件包

#web01-02
mkdir -p /app/tools/
#上传软件包到/app/tools/目录
rz jdk-8u351-linux-x64.tar.gz
#解压
cd /app/tools/
tar xf /app/tools/jdk-8u351-linux-x64.tar.gz -C /app/tools/
#创建软连接,便于升级
ln -s /app/tools/jdk1.8.0_351 /app/tools/jdk
#配置环境变量JAVA_HOME PATH CLASS_PATH,加上单引号不用转义$符,cat >>是追加
cat >>/etc/profile<<'EOF'
export JAVA_HOME=/app/tools/jdk
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
EOF
source /etc/profile
java -version
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.

3.部署tomcat

 tomcat版本官方下载地址       

 apache-tomcat-9.0.52.tar.gz下载地址

#web01-02
#上传软件包到/app/tools/目录
rz apache-tomcat-9.0.52.tar.gz
#解压
cd /app/tools/
tar xf /app/tools/apache-tomcat-9.0.52.tar.gz -C /app/tools/
#创建软连接,便于升级,tomcat后面不要写/,tomcat不是目录
ln -s /app/tools/apache-tomcat-9.0.52 /app/tools/tomcat
#版本检查,可看到tomcat版本和JDK版本
/app/tools/tomcat/bin/version.sh
#配置环境变量 加上单引号不用转义$符,cat >>是追加
cat >>/etc/profile<<'EOF'
export TOMCAT_HOME=/app/tools/tomcat
EOF
source /etc/profile
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.

4.启动tomcat及测试

#启动tomcat
/app/tools/tomcat/bin/startup.sh
#端口和进程查看
ss -tlunp | grep java
ps -ef | grep java
#关闭防火墙
systemctl stop firewalld
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

浏览器访问 http://192.168.77.142:8080

三.tomcat命令及目录

1.tomcat管理命令

bin目录

描述

常用命令

/app/tools/tomcat/bin

tomcat管理命令目录

startup.sh #启动tomcat

startshutdown.sh #关闭tomcat

version.sh #检查JDK和tomcat是否正常链接与版本

catalina.sh #启动和关闭都调用这个脚本,配置java启动参数,配置JVM参数,tomcat远程管理

2.tomcat目录结构

/app/tools/tomcat/目录下

目录

描述

bin

tomcat管理命令

startup.sh     shutdown.sh   catalina.sh  version.sh

conf

tomcat配置文件

server.xml  #主配置文件  nginx是nginx.conf

web.xml #额外功能

tomcat-user.xml #管理配置文件的用户名和密码

logs

tomcat日志文件

catalina.out #最全日志 查看error

catalina.2024-07-12.log #每天的切割日志

localhost_access_log.2024-07-12.txt #访问日志

webapps

tomcat站点目录

war包  升级替换war包的目录

3.systemd管理tomcat

#环境变量配置文件,
cat >/etc/sysconfig/tomcat<<'EOF'
#变量=内容
JAVA_HOME=/app/tools/jdk
PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:bin/:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
EOF

#systemd文件
cat >/usr/lib/systemd/system/tomcat.service <<'EOF'
#/usr/lib/systemd/system/tomcat.service

[Unit]
Description=Tomcat Server Manage
After=network.target remote-fs.target

[Service]
Type=forking
EnvironmentFile=/etc/sysconfig/tomcat
ExecStart=/app/tools/tomcat/bin/startup.sh
ExecReload="/app/tools/tomcat/bin/shutdown.sh && sleep 2 && /app/tools/tomcat/bin/startup.sh"
ExecStop=/app/tools/tomcat/bin/shutdown.sh

[Install]
WantedBy=multi-user.target
EOF

systemctl daemon-reload

#使用前先把手动启动的关闭
/app/tools/tomcat/bin/shutdown.sh
#systemd启动tomcat
systemctl start tomcat
systemctl enable tomcat
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.

四.代码运行

开发人员书写的java代码称java源代码,无法直接部署在tomcat中,需要通过maven,gradle对源代码进行编译,编译后生成war包或jar包。

war包

需要放在java容器中运行tomcat,webapps目录下,放入后会自动解压,升级war包过程

jar包

不需要java容器,内置tomcat,只需要JDK,通过java -jar xxx.jar运行

1.war包测试

 memtest.war下载地址

cd /app/tools/tomcat/webapps
#上传memtest.war
rz memtest.war
  • 1.
  • 2.
  • 3.

浏览器访问测试http://192.168.77.142:8080/memtest/meminfo.jsp

2.jar包测试

 nginxWebUI.jar下载地址

#下载nginxWebUI-4.2.0.jar
mkdir -p /app/jar/nginxWebUI
cd /app/jar/nginxWebUI
wget  https://gitee.com/cym1102/nginxWebUI/releases/download/4.2.0/nginxWebUI-4.2.0.jar
#前台运行
java -jar  nginxWebUI-4.2.0.jar  -Dfile.encoding=UTF-8  --server.port=8888 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

浏览器访问http://192.168.77.142:8888/

初始用户名和口令自定义,然后使用自定义账号和口令登录  

tomcat相关概念与部署_jar_02

3.war包升级过程

#进入站点目录
cd /app/tools/tomcat/webapps
#停止tomcat
cd ../bin
sh shutdown.sh
或
systemctl stop tomcat
#备份原有war包,然后删除之前war包自动解压的文件夹
#上传新的war包到webapps下
#启动tomcat
cd /app/tools/tomcat/bin
sh startup.sh
或
systemctl start tomcat
#查看启动日志
tail -f /app/tools/tomcat/logs/catalina.out
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.