Tomcat 简介与部署静态网站
Tomcat 是一个 Web 服务器,也是一个 Servlet 容器,本质上它是一个软件。Tomcat 是运行 Java Web 程序的一个容器。Servlet 是一个 Java 程序,不过它和我们平常的 Java 程序不一样,它是运行在 Servlet 容器中的,不能自动运行。Servlet 容器将用户的请求传给 Servlet 应用程序,并将 Servlet 应用程序的响应回传给用户。Servlet 是运行在 Web 服务器(例如 Tomcat)上面的小应用程序。
Servlet API 是 Servlet 提供的统一编程接口。Servlet 接口由具体实现类实现,Tomcat 这一类容器就去实现了 Servlet 的接口,而 Sun 公司规定这一类接口。Servlet 运行在容器下面。Tomcat 除了可以运行 Servlet 程序,还可以存放 HTML、CSS、JS、图片等文件。
下面演示下载并运行一个 Tomcat。
官网地址:http://tomcat.apache.org/
目前最新版本是 Tomcat 9,下载地址如下:
- 免安装版:http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.12/bin/apache-tomcat-9.0.12-windows-x64.zip
- 离线安装版:http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.12/bin/apache-tomcat-9.0.12.exe
将解压后的文件放到 C 盘根目录,解压后看到 Tomcat 包含以下文件。
需要说明一点:Sun 公司一开始并没有具体去实现 Servlet,而只是定义了一些接口(interface),具体实现交给 Tomcat 等容器来完成。除了 Tomcat,还有其他 Servlet 容器。
打开 bin 目录,运行 startup.bat 文件即可启动 Tomcat。启动后在浏览器访问 http://localhost:8080/ 即可打开 Tomcat 首页。

Tomcat 目录结构
| 目录 | 说明 |
|---|---|
bin | 可执行文件和各种 bat 命令 |
lib | catalina 本身和 web 应用可加载的类目录 |
conf | 配置文件目录 |
logs | 日志目录 |
webapps | web 应用所存放的目录 |
work | Tomcat 的工作目录(存放 jsp 产生的 class 文件) |
temp | 存放临时产生的文件 |
common/lib 下面存放了很多 jar 文件,其中 servlet-api.jar 是 Tomcat 实现了 Sun 公司定义的 Servlet 接口。
Tomcat 配置文件
存放在 conf 目录下:
server.xml:配置端口等web.xml:配置 web 应用tomcat-users.xml:配置 Tomcat 用户,用于登录管理后台
在 Tomcat 中添加 WEB 应用
在 webapps 下面添加一个文件夹作为 web 应用的根目录,例如 homepage。里面必须有一个 WEB-INF 文件夹,该目录下的文件用户无法直接访问,Tomcat 会读取其中的配置。
WEB-INF 下面必须有一个 web.xml,最基本的写法如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1"
metadata-complete="true">
</web-app>Code language: HTML, XML (xml)
在 homepage 目录下添加一个静态 HTML 文档 index.html,访问地址为:
http://localhost:8080/homepage/index.html