Apache Tomcat 11是一款开源的、轻量级的 Web 服务器 和 Servlet 容器,由 Apache 软件基金会(Apache Software Foundation)开发和维护,采用了现代开发实践,要求 Java SE 17 作为最低支持版本,实现了Java Servlet、JavaServer Pages (JSP)、Java Expression Language和Java WebSocket技术的规范。同时其中内置的 Tribes 集群通信框架,可用于实现 Tomcat 节点间的会话同步、消息分发等功能。
软件特色
1、开源免费
Apache License 2.0,可自由使用、修改和分发。
2、轻量高效
相比完整的 Java EE 应用服务器(如 WildFly、WebLogic、WebSphere),Tomcat 更轻便、启动快、资源占用少。
3、易于部署和配置
目录结构清晰,配置文件(如 server.xml, web.xml)简单明了。
4、跨平台
基于 Java 开发,支持 Windows、Linux、macOS 等主流操作系统。
5、社区活跃
拥有庞大的用户群体和丰富的文档、教程资源。
6、模块化架构
可通过插件或扩展支持更多功能(如集群、SSL、JNDI 等)。
适用场景
1、中小型 Java Web 项目(企业官网、后台管理系统、API 服务等)
2、学习 Java Web 开发的理想平台
3、微服务架构中的独立服务容器
4、与 Spring Boot、Spring MVC、Struts 等框架无缝集成
5、作为开发和测试环境的标准容器
更新日志
v11.0.25版本
确保合并 web.xml 片段时登录配置冲突会触发部署失败。 (市场)
在解析配置文件时删除对 String.intern() 的不必要的调用。 (市场)
扩展 sessionAttributeValueClassNameFilter 以包括动态代理接口类的过滤。 (市场)
当将用户数据持久保存到 DataSourceUserDatabase 失败时尝试使用回滚并改进错误报告。 (雷姆)
70143:在解析部件时处理 InvalidFileNameException,以按照 Servlet 规范的要求将其作为 IllegalStateException 重新抛出。 (雷姆)
将缺失原因添加到 JsonErrorReportValve。 (雷姆)
修复重写规则的 N 和 C 标志的评估。 (雷姆)
qsd 标志在重写时应始终丢弃原始查询字符串。 (雷姆)
为默认 servlet 生成的目录列表添加适当的上下文路径、当前目录名称和父目录名称转义。确保 XML 转义与 XML 输出一起使用。 (市场)
在 RewriteValve 规则中处理证书使用者名称和颁发者名称时,请始终使用 RFC 2253 格式名称。 (市场)
当客户端提供的随机数计数位于窗口 (markt) 的上限时,修复使用摘要身份验证错误拒绝请求的问题。
将 Context 角色映射与 Servlet 规范 security-role-ref 分开。 (雷姆)
处理 JNDIRealm 配置为使用 userRoleAttribute 执行角色搜索但该属性不可用或未为当前用户配置的情况。 (市场)
改进对与会话过期同时发生的会话属性添加的处理。应用程序现在要么看到成功添加,然后到期,要么添加不会成功。会话不再可能过期并且添加成功。对于实现 HttpSessionBindingListener 的属性来说尤其如此。 (市场)
向上下文添加一个新属性 urlPatternsProvidedInDecodedForm。此属性控制部署描述符 (web.xml)、注释和/或其编程等效项中提供的 URL 和 URL 模式是否被视为以 URL 编码形式(即使用 %nn 编码)或以解码形式提供。 Servlet 规范要求它们以解码的形式提供。然而,Tomcat 历来将它们视为以编码形式提供的。在 Tomcat 12 中,它们将始终被视为以解码形式提供。此设置允许在逐个应用程序的基础上从编码形式迁移到解码形式。该属性将在 Tomcat 12 中被删除,它将被有效地硬编码为 true。 (市场)
确保当多个约束与请求路径匹配时,选择具有最长匹配路径的安全约束。 (市场)
如果FORM认证保存的请求使用GET以外的方式,请确保保存的请求恢复后、处理前重新评估安全约束。扩展 FormAuthenticator 并覆盖 doAuthenticate() 和/或 RestoreRequest() 的自定义 Authenticator 实现将需要修改。 (市场)
对 DataSourceRealm 的各种改进。连接到数据库失败或者用户或角色查找期间出现异常现在将导致身份验证失败,而不是部分填充的主体。对于 CLIENT-CERT 和 SPNEGO 身份验证,用户必须存在于数据库中才能成功进行身份验证。 (市场)
-
Java
Java开发工具是构建、调试及维护Java应用程序的核心利器。Java开发软件大全汇聚了行业领先的集成开发环境(IDE)如 IntelliJ IDEA、Eclipse、VS Code,以及必备的 JDK 运行环境与Java环境变量一键配置工具。无论您是刚起步的编程小白,还是追求极致效率的资深大牛,都能在这里一站式获取最纯净、最稳定的开发环境,助力项目快速交付,让编码更专业。











































赣公网安备36010602000086号,版权投诉请发邮件到website-sun@qq.com,我们会尽快处理