应用介绍
写完一个 Java Web 应用,打包成 war 之后总得有东西把它跑起来——处理 HTTP 请求、管理会话、把请求分发给对应的 Servlet。上一整套商业应用服务器太重,光启动就要等半天。Apache Tomcat 是这一层最常见的选择:Jakarta Servlet、Pages、WebSocket 等规范的开源实现,把 war 丢进 webapps 目录就能跑,启动几秒钟的事。
它是 Apache 基金会的项目,开放式开发,二十多年来支撑了大量关键业务系统。目前维护三条线:11.0.x 对应 Jakarta EE 11,10.1.x 对应 Jakarta EE 9 及以后,9.0.x 是 Java EE 8 时代的老线(官方已宣布 2027 年 3 月 31 日结束支持)。从 9 升到 10 需要注意包名从 javax.* 改成了 jakarta.*,官方提供了迁移工具处理这一步。
Apache License 2.0,跨平台,Windows 有安装版和 zip 版。
Servlet 容器:实现 Jakarta Servlet 规范,负责接收 HTTP 请求、维护会话、把请求路由给应用里的 Servlet,是 Java Web 应用的运行底座。
JSP 支持:内置 Jakarta Pages(JSP)引擎,页面模板在服务端编译执行。
WebSocket 与表达式语言:支持 Jakarta WebSocket 做双向通信,以及 Expression Language、Annotations、Authentication 等配套规范。
部署简单:war 包放进 webapps 目录即可自动展开部署,也能通过管理界面上传部署和热更新,不必重启整个服务。
管理与状态页:自带 Manager 和 Host Manager 应用,可以在浏览器里查看已部署的应用、启停单个应用、查看会话和服务器状态。
连接器可选:提供 NIO、NIO2 等不同的连接器实现,并支持 OpenSSL 加速的 TLS(Tomcat Native),高并发场景可按需调整。
三条维护分支:11.0.x、10.1.x 与 9.0.x 并行维护,按项目所用的 Jakarta EE / Java EE 版本选择对应分支。
迁移工具:官方提供 Jakarta EE 迁移工具,处理从 javax.* 到 jakarta.* 的包名变更,老应用升级不必逐个文件手改。
开源免费:Apache License 2.0,源码公开,可商用,跨平台运行。
它是 Apache 基金会的项目,开放式开发,二十多年来支撑了大量关键业务系统。目前维护三条线:11.0.x 对应 Jakarta EE 11,10.1.x 对应 Jakarta EE 9 及以后,9.0.x 是 Java EE 8 时代的老线(官方已宣布 2027 年 3 月 31 日结束支持)。从 9 升到 10 需要注意包名从 javax.* 改成了 jakarta.*,官方提供了迁移工具处理这一步。
Apache License 2.0,跨平台,Windows 有安装版和 zip 版。
软件功能
Servlet 容器:实现 Jakarta Servlet 规范,负责接收 HTTP 请求、维护会话、把请求路由给应用里的 Servlet,是 Java Web 应用的运行底座。
JSP 支持:内置 Jakarta Pages(JSP)引擎,页面模板在服务端编译执行。
WebSocket 与表达式语言:支持 Jakarta WebSocket 做双向通信,以及 Expression Language、Annotations、Authentication 等配套规范。
部署简单:war 包放进 webapps 目录即可自动展开部署,也能通过管理界面上传部署和热更新,不必重启整个服务。
管理与状态页:自带 Manager 和 Host Manager 应用,可以在浏览器里查看已部署的应用、启停单个应用、查看会话和服务器状态。
连接器可选:提供 NIO、NIO2 等不同的连接器实现,并支持 OpenSSL 加速的 TLS(Tomcat Native),高并发场景可按需调整。
三条维护分支:11.0.x、10.1.x 与 9.0.x 并行维护,按项目所用的 Jakarta EE / Java EE 版本选择对应分支。
迁移工具:官方提供 Jakarta EE 迁移工具,处理从 javax.* 到 jakarta.* 的包名变更,老应用升级不必逐个文件手改。
开源免费:Apache License 2.0,源码公开,可商用,跨平台运行。

