一、相关知识
Tomcat介绍
Tomcat 是 Apache 软件基金会(Apache Software Foundation)下的一个开源项目,主要用于实现 Java Servlet、JavaServer Pages (JSP)、Java Expression Language (JEL) 以及 Java WebSocket 技术的容器。作为轻量级的 Java 应用服务器,Tomcat 因其易于配置、灵活性和广泛的使用社区而广受欢迎。Tomcat 主要用于开发和调试 JSP/Servlet 应用程序,但也可以作为生产环境中的服务器使用,尽管对于高负载的生产环境,可以选择更强大的应用服务器如 JBoss、WebLogic 或 WebSphere。
Tomcat的主要特点
- 开源和免费:Tomcat 是基于 Apache 许可证发布的,这意味着它是完全免费和开源的,任何人都可以下载、使用和修改其源代码。
- 轻量级:相对于其他 Java 应用服务器,Tomcat 的内存占用较小,启动速度快,非常适合用于开发和测试环境。
- Servlet 容器:Tomcat 实现了 Servlet 和 JSP 规范,使得 Java 开发者能够编写出基于这些规范的动态 Web 应用程序。
- 模块化:Tomcat 的架构是模块化的,允许开发者根据需要添加或移除组件,如连接池、安全模块等。
- 易于配置:Tomcat 的配置文件(如
server.xml
、web.xml
等)相对简单易懂,易于配置。 - 强大的管理工具:Tomcat 提供了丰富的管理界面和工具(如 Tomcat Manager 应用),帮助管理员管理应用、用户、角色和会话等。
- 支持集群和负载均衡:通过配置,Tomcat 可以支持应用集群和负载均衡,以提高系统的可用性和性能。
- 社区支持:由于 Tomcat 是开源项目,它拥有一个活跃的开发者社区,可以提供丰富的文档、教程和支持。
Tomcat的使用场景
- 开发环境:Tomcat 是 Java Web 开发者常用的开发服务器,用于测试 JSP/Servlet 应用程序。
- 测试环境:在测试阶段,Tomcat 可以用来部署应用程序并测试其性能和稳定性。
- 生产环境:对于小到中型项目,Tomcat 也可以作为生产环境的应用服务器。然而,对于需要处理大量并发请求的大型项目,可能需要更强大的应用服务器。
Java Servlet
Servlet(Server Applet)是Java Servlet的简称,是JavaEE规范中的技术之一,也是Java开发中最重要的动态资源之一。Servlet是用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态Web内容。
定义和特点
- 定义:Servlet是运行在web容器(服务器)中的一个小的Java程序,能够接收来自客户端的基于HTTP协议的请求,并且对请求进行响应。
- 特点
- Servlet是Java编写的,因此具有Java的所有优点,如跨平台性、安全性等。
- Servlet运行于支持Java的应用服务器中,如Tomcat、Jetty等。
- Servlet可以响应任何类型的请求,但绝大多数情况下用于扩展基于HTTP协议的Web服务器。
- Servlet的执行效率高于传统的CGI程序,因为它通过多线程方式处理请求,减少了系统开销。
应用场景
Servlet广泛应用于Web开发中,用于处理客户端的请求并生成响应。它可以用于实现各种Web应用功能,如用户登录、数据查询、文件上传下载等。此外,Servlet还可以与其他Java技术(如JSP、JDBC等)结合使用,以实现更复杂的Web应用。
与Tomcat的关联
Tomcat是一个开源的、轻量级的Web应用服务器,同时也是一个Servlet容器。Servlet容器是Web服务器的一个扩展,用于支持Servlet的部署和执行。Tomcat的主要功能之一就是管理和执行Servlet。具体来说,Tomcat为Servlet提供了一个运行环境,使得Servlet可以在其中执行。
Tomcat和Servlet的交互过程
- 请求接收与解析:当客户端(如浏览器)发送HTTP请求到Tomcat服务器时,Tomcat首先接收并解析这个请求。
- 请求传递:解析后的请求被封装成HttpServletRequest对象,并传递给相应的Servlet进行处理。
- Servlet处理:Servlet通过HttpServletRequest对象获取请求信息,执行相应的业务逻辑,并生成响应内容。
- 响应发送:Servlet将生成的响应内容封装成HttpServletResponse对象,并通过Tomcat服务器发送给客户端。
二、配置步骤
网络参数
标识 | Tomcat-Server |
---|---|
主机名 | TomcatServer |
网络信息 | 192.168.37.14/24 |
主要操作用户 | root |
Tomcat和JDK版本的兼容性
Tomcat版本 | JDK版本 |
---|---|
Tomcat7 | JDK1.6 、JDK1.7、JDK.1.8 |
Tomcat8 | JDK1.7、JDK1.8 |
Tomcat9 | JDK1.8以上 |
Tomcat10 | JDK11以上 |
Tomcat11 | JDK11以上 |
访问Tomcat官网下载安装包
Apache Tomcat® - Apache Tomcat 10 Software Downloads
修改主机名
[root@localhost ~]# hostnamectl hostname TomcatServer
[root@localhost ~]# bash
修改网络信息
[root@TomcatServer ~]# nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.37.14/24 ipv4.gateway 192.168.37.254
[root@TomcatServer ~]# nmcli connection up ens160
验证:查看网络信息
[root@TomcatServer ~]# ip add show ens160
1、配置软件仓库
这里我们拥有一个本地的YUM源服务器,通过FTP共享,所以仓库地址指向YUM源服务器
首先删除原有的仓库文件
[root@TomcatServer ~]# rm -rf /etc/yum.repos.d/*
新建仓库文件
[root@TomcatServer ~]# vim /etc/yum.repos.d/dvd.repo
# 写入以下内容
[BaseOS]
name=BaseOS
baseurl=ftp://192.168.37.1/yum/BaseOS
enabled=1
gpgcheck=0
[AppStream]
name=AppStream
baseurl=ftp://192.168.37.1/yum/AppStream
enabled=1
gpgcheck=0
清理DNF的缓存目录,重新生成缓存
[root@TomcatServer ~]# dnf clean all;dnf makecache
2、配置JDK
Step1:
安装openjdk11,我们使用的Tomcat版本是10.1.25,所以选择JDK11
[root@TomcatServer ~]# dnf install -y java-11-openjdk.x86_64
Step2:
先查找java安装的位置
[root@TomcatServer ~]# rpm -ql java-11-openjdk
Step3:
编辑环境变量
[root@TomcatServer ~]# vim /etc/profile
# 追加下列内容
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.18.0.10-2.el9_1.x86_64
export PATH=$JAVA_HOME/bin:$PATH
Step4:
使配置生效
[root@TomcatServer ~]# source /etc/profile
Step5:
验证:执行java -version
[root@TomcatServer ~]# java -version
3、安装Tomcat
Step1:
将Tomcat安装包上传
Step2:
将压缩包解压至/usr/local目录下
[root@TomcatServer ~]# tar -xf apache-tomcat-10.1.25.tar.gz -C /usr/local/
Step3:
进入解压目录下的bin目录,启动Tomcat
[root@TomcatServer ~]# cd /usr/local/apache-tomcat-10.1.25/bin/
[root@TomcatServer bin]# ./startup.sh
Step4:
查看Tomcat是否存在监听端口,调整防火墙规则,放行对应的端口号
[root@TomcatServer ~]# netstat -tulnp | grep java
[root@TomcatServer ~]# firewall-cmd --add-port=8080/tcp --permanent
[root@TomcatServer ~]# firewall-cmd --add-port=8005/tcp --permanent
f[root@TomcatServer ~]# firewall-cmd --reload
Step5:
通过主机访问Tomcat的默认网页
4、自定义默认网站
Tomcat的默认发布目录可以在我们的Tomcat解压目录下找到【webapps】
Step1:
在webapps目录下新建发布目录
[root@TomcatServer ~]# mkdri /usr/local/apache-tomcat-10.1.25/webapps/jsp/
Step2:
编写JSP网页文件
[root@TomcatServer ~]# vim /usr/local/apache-tomcat-10.1.25/webapps/jsp/index.jsp
网页内容如下
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>This is JSP HTML</title>
</head>
<body>
<%
out.println("The webpage owner is from Meaauf.");
%>
</body>
</html>
Step4:
重启Tomcat
[root@TomcatServer ~]# /usr/local/apache-tomcat-10.1.25/bin/shutdown.sh
[root@TomcatServer ~]# /usr/local/apache-tomcat-10.1.25/bin/startup.sh
Step5:
通过主机测试访网站