不同的 Apache Tomcat版本对应不同版本的协议规范,请根据项目所用的技术栈选择合适的版本。
目录
1、协议规范和Apache Tomcat版本的映射关系
2、Apache Tomcat 10.1.x
3、Apache Tomcat 10.0.x
4、Apache Tomcat 9.x
5、Apache Tomcat 8.x
5.1、Apache Tomcat 8.0.x
5.2、Apache Tomcat 8.5.x
1、协议规范和Apache Tomcat版本的映射关系
Servlet Spec | JSP Spec | EL Spec | WebSocket Spec | Authentication (JASPIC) Spec | Tomcat 版本 | 最新Released版本 | 支持的Java 版本 |
---|---|---|---|---|---|---|---|
6.0 | 3.1 | 5.0 | 2.1 | 3.0 | 10.1.x | 10.1.0-M17 (beta) | 11 and later |
5.0 | 3.0 | 4.0 | 2.0 | 2.0 | 10.0.x | 10.0.23 | 8 and later |
4.0 | 2.3 | 3.0 | 1.1 | 1.1 | 9.0.x | 9.0.65 | 8 and later |
3.1 | 2.3 | 3.0 | 1.1 | 1.1 | 8.5.x | 8.5.82 | 7 and later |
3.1 | 2.3 | 3.0 | 1.1 | N/A | 8.0.x (superseded) | 8.0.53 (superseded) | 7 and later |
3.0 | 2.2 | 2.2 | 1.1 | N/A | 7.0.x (archived) | 7.0.109 (archived) | 6 and later (7 and later for WebSocket) |
2.5 | 2.1 | 2.1 | N/A | N/A | 6.0.x (archived) | 6.0.53 (archived) | 5 and later |
2.4 | 2.0 | N/A | N/A | N/A | 5.5.x (archived) | 5.5.36 (archived) | 1.4 and later |
2.3 | 1.2 | N/A | N/A | N/A | 4.1.x (archived) | 4.1.40 (archived) | 1.3 and later |
2.2 | 1.1 | N/A | N/A | N/A | 3.3.x (archived) | 3.3.2 (archived) | 1.1 and later |
访问早期版本应注意:
- 最初的早期访问版本包含可能导致在 Tomcat 上运行的 Web 应用程序出现问题的错误并不罕见。
- 如果新的 Java 版本引入了新的语言特性,那么默认的 JSP 编译器可能不会立即支持它们。将 JSP 编译器切换到 javac 可以使这些新的语言特性能够在 JSP 中使用。
- 如果在使用 Java 早期访问版本时发现问题,请寻求帮助。
2、Apache Tomcat 10.1.x
Apache Tomcat 10.1.x是当前的开发重点。它基于 Tomcat 10.0.x 构建,并实现了Servlet 6.0、JSP TBD、EL TBD、WebSocket TBD和Authentication TBD规范(Jakarta EE 10 平台所需的版本)。
3、Apache Tomcat 10.0.x
Apache Tomcat 10.0.x基于 Tomcat 9.0.x 构建,并实现了Servlet 5.0、JSP 3.0、EL 4.0、WebSocket 2.0和Authentication 2.0规范(Jakarta EE 9 平台所需的版本)。
4、Apache Tomcat 9.x
Apache Tomcat 9.x建立在 Tomcat 8.0.x 和 8.5.x 之上,并实现了Servlet 4.0、JSP 2.3、EL 3.0、WebSocket 1.1和JASPIC 1.1规范(Java EE 8 平台所需的版本)。除此之外,它还包括以下重大改进:
- 添加对 HTTP/2 的支持(需要在 Java 9 上运行(自 Apache Tomcat 9.0.0.M18 起)或安装Tomcat Native库)
- 通过 JSSE 连接器(NIO 和 NIO2)添加对使用 OpenSSL 的 TLS 支持的支持
- 添加对 TLS 虚拟主机 (SNI) 的支持
5、Apache Tomcat 8.x
5.1、Apache Tomcat 8.0.x
基于 Tomcat 7.0.x 构建,并实现了Servlet 3.1、JSP 2.3、EL 3.0和WebSocket 1.1规范。除此之外,它还包括以下重大改进:
- 用于替换早期版本中提供的多个资源扩展功能的单个通用资源实现。
说明:
Tomcat 8.0 现已结束生命周期,应尽快升级到 Tomcat 8.5.x 或更高版本,有关迁移到 Tomcat 8.5 的指导,请参阅迁移指南。
5.2、Apache Tomcat 8.5.x
支持与 Apache Tomcat 8.0.x 相同的 Servlet、JSP、EL 和 WebSocket 规范版本。除此之外,它还实现了JASPIC 1.1规范。它创建于 2016 年 3 月,作为 Tomcat 9.0.0.M4(alpha)里程碑版本的一个分支。它提供来自 Tomcat 9.x 代码库的 HTTP/2 支持和其他功能,同时兼容 Tomcat 8.0 运行时和规范要求。
重大改进:
- 添加对 HTTP/2 的支持(需要Tomcat Native库)
- 通过 JSSE 连接器(NIO 和 NIO2)添加对使用 OpenSSL 的 TLS 支持的支持
- 添加对 TLS 虚拟主机 (SNI) 的支持
删除内容:
- HTTP 和 AJP 连接器的 BIO 实现
- 支持彗星API
参考:
- Apache Tomcat® – Which Version Do I Want?
- Oracle JDK Download
- Open JDK Download