摘要:本文介绍了Tomcat的基本使用和配置。
环境
Windows 10 企业版 LTSC 21H2
Java 1.8
Tomcat 8.5.50
1 概述
1.1 简介
Tomcat是Apache基金会旗下的开源轻量级Servlet容器,也是JavaWeb开发中最主流的容器之一。
Tomcat的核心优势是规范兼容性强、生态完善、稳定性高,与主流JavaWeb框架深度适配,文档和社区解决方案丰富,部署简单且无商业授权成本,既适合开发测试环境,也能支撑中小型生产环境的JavaWeb应用。
1.2 比较
核心定位:
- Tomcat:Apache旗下的开源轻量级Servlet容器,JavaWeb开发的事实标准,主打稳定性和标准规范实现。
- Jetty:Eclipse基金维护的轻量级嵌入式Web容器,以灵活集成和异步IO为核心优势,适合现代架构。
- Resin:Caucho公司开发的全栈式JavaEE应用服务器,支持完整企业级规范,侧重商业性能优化。
架构特性:
- Tomcat:模块化设计,结构清晰但相对偏重,规范适配性强。
- Jetty:事件驱动和异步非阻塞架构,组件高度可插拔,极度轻量化,启动迅速。
- Resin:一体化集成架构,内置缓存和负载均衡等企业级特性,JSP编译优化突出。
性能特点:
- Tomcat:性能均衡稳定,中等并发场景表现可靠,高并发异步场景资源消耗相对较高。
- Jetty:高并发和异步IO性能卓越,启动速度极快,内存占用极低,WebSocket支持优异。
- Resin:高并发企业级场景表现突出,JSP执行效率高,通过内置优化提升响应速度。
适用场景:
- Tomcat:绝大多数中小型应用,开发测试环境,主流框架默认适配。
- Jetty:嵌入式部署、微服务架构、实时通信应用,需要快速启停的测试和云原生场景。
- Resin:大型电商、高流量企业级应用,需要集群部署和负载均衡的生产环境。
使用成本:
- Tomcat:社区活跃度极高,文档全面丰富,入门门槛低,解决方案随处可见。
- Jetty:社区活跃度中等,文档精简,需要一定定制化能力,学习曲线稍陡。
- Resin:社区活跃度低,开源资料有限,配置运维复杂,适合有专业运维团队的企业。
授权方式:
- Tomcat:基于Apache 2.0协议,完全开源免费,无商业授权成本。
- Jetty:基于Apache 2.0/EPL双协议,完全开源免费,无商业授权成本。
- Resin:基于GPL协议,基础版开源,企业级特性需商业授权付费。
1.3 版本
版本对照:
| Tomcat版本 | Servlet版本 | Java版本 |
|---|---|---|
| Tomcat 9.0.x | Servlet 4.0 | Java 8+ |
| Tomcat 8.5.x | Servlet 3.1 | Java 7+ |
| Tomcat 8.0.x | Servlet 3.1 | Java 7+ |
| Tomcat 7.0.x | Servlet 3.0 | Java 6+ |
| Tomcat 6.0.x | Servlet 2.5 | Java 5+ |
| Tomcat 5.5.x | Servlet 2.4 | Java 5+ |
2 使用
2.1 下载
官方网站:https://tomcat.apache.org/
历史版本:https://archive.apache.org/dist/tomcat/
版本说明:
- apache-tomcat-x.zip:Windows系统的压缩包,不包含批处理脚本以及本地库。
- apache-tomcat-x.tar.gz:Linux系统的压缩包,主要提供给Linux系统使用。
- apache-tomcat-x.exe:Windows系统的安装包,功能和压缩包基本一致,适用Windows快捷键以及系统服务形式启动。
- apache-tomcat-x-windows-x86.zip:32位Windows发布包,包含批处理脚本以及本地库,适配32位和64位操作系统。
- apache-tomcat-x-windows-x64.zip:64位Windows发布包,包含批处理脚本以及本地库,只适配64位操作系统。
2.2 安装
在安装前需要确保配置了JDK环境变量,即配置了JAVA_HOME环境变量。
将apache-tomcat-x.zip压缩包解压到指定目录,即可完成Tomcat的安装。
进入解压目录,可以看到Tomcat的目录结构:
1 | apache-tomcat-x |
目录说明:
- bin:存放Tomcat的可执行脚本。
- conf:存放Tomcat的配置文件。
- lib:存放Tomcat的核心类库和依赖包。
- logs:存放Tomcat的日志文件。
- temp:存放Tomcat的临时文件。
- webapps:存放Tomcat的Web应用程序,启动时会加载该目录下的应用程序,默认访问ROOT项目。
- work:存放Tomcat的运行时文件。
进入解压目录,执行bin/startup.bat启动Tomcat,执行bin/shutdown.bat停止Tomcat。
启动Tomcat后,访问http://localhost:8080/即可看到Tomcat默认页面。
3 配置
3.1 修改端口
进入解压目录,打开conf/server.xml文件,找到:
1 | <Connector port="8080" protocol="HTTP/1.1" |
修改port属性为新的端口号。
3.2 命令行乱码
进入解压目录,打开conf/logging.properties文件,找到:
1 | java.util.logging.ConsoleHandler.encoding = UTF-8 |
修改encoding属性为GBK后,保存并重启。
3.3 修改管理密码
进入解压目录,打开conf/tomcat-users.xml文件,在tomcat-users标签中增加:
1 | <role rolename="manager-gui"/> |
保存并重启,通过用户和密码访问管理页面。
条