Servlet是基于Java的动态网站开发技术,它的所有类和组件都是基于Java实现的,要想使用Servlet,就必须提前配置好Java运行环境。
搭建好了Java环境,再安装一款Web容器就可以运行Servlet代码了。市场上有很多Web容器,著名的有Tomcat、Jetty、JBoss、WebLogic等,初学者最常使用的是Tomcat。Tomcat是Java官方推出一款免费开源的Web容器,它占用资源少,扩展性好,运行稳定,支持负载均衡,并且易于学习和使用,所以成为最受欢迎的Tomcat容器。
本文将为您讲解Tomcat的下载和安装。
Tomcat下载和安装
进入Tomcat官网(http://tomcat.apache.org/),在首页左侧的导航栏中找到“Download”分类,可以看到在它下面有多个版本的Tomcat,如图1所示。
不同的Tomcat版本支持的Java版本也不同,读者可以根据自己的JDK/JRE版本来选择对应的Tomcat版本,如下图所示:
不同版本的Tomcat对各种规范的支持(2020-11-13)
Tomcat 版本 | 最新子版本 | Servlet 规范 | JSP 规范 | EL 规范 | WebSocket 规范 | 认证(JASIC) 规范 | Java 版本 JDK/JRE 版本 |
10.0.x(内测) | 10.0.0 | 5.0 | 3.0 | 4.0 | 2.0 | 2.0 | 8 以及更高 |
9.0.x | 9.0.36 | 4.0 | 2.3 | 3.0 | 1.1 | 1.1 | 8 以及更高 |
8.5.x | 8.5.56 | 3.1 | 2.3 | 3.0 | 1.1 | 1.1 | 7 以及更高 |
8.0.x(已被取代) | 8.0.53(已被取代) | 3.1 | 2.3 | 3.0 | 1.1 | N/A | 7 以及更高 |
7.0.x | 7.0.104 | 3.0 | 2.2 | 2.2 | 1.1 | N/A | 6 以及更高 (对于 WebSocket,支持 7 以及更高) |
6.0.x(已废弃) | 6.0.53(已废弃) | 2.5 | 2.1 | 2.1 | N/A | N/A | 5 以及更高 |
5.5.x(已废弃) | 5.5.36(已废弃) | 2.4 | 2.0 | N/A | N/A | N/A | 1.4 以及更高 |
4.1.x(已废弃) | 4.1.40(已废弃) | 2.3 | 1.2 | N/A | N/A | N/A | 1.3 以及更高 |
3.3.x(已废弃) | 3.3.2(已废弃) | 2.2 | 1.1 | N/A | N/A | N/A | 1.1 以及更高 |
本地电脑使用的是JDK8,对应的Tomcat版本是10和9,但是考虑到Tomcat10还在内测阶段,可能不太稳定,所以选择了Tomcat9。
如图1所示,点击”Tomcat9”链接即可跳转到Tomcat9下载页面,向下滚动鼠标就能看到具体的下载链接,请读者根据自己的操作系统选择对应的版本,如图2所示。
Windows下的Tomcat有安装版和解压版,下面说一下它们的区别。
安装版Tomcat
安装版Tomcat下载后得到一个exe安装包,和其它软件的安装流程没有什么区别。
安装版Tomcat在安装过程中会自动进行相关配置,比如找到JDK的位置、读取环境变量JAVA_HOME等。安装版Tomcat在启动后以服务的方式运行,并且带有GUI管理工具(图形界面化的管理工具),用户可以很方便地通过界面进行管理和操作,非常友好。
解压版Tomcat
解压版Tomcat下载后得到一个zip压缩包,是免安装的,使用WinRAR等软件解压到任意目录后就可以直接使用。
解压版Tomcat还可以到处移动,您可以将它从A文件夹移动到B文件夹,甚至移动到U盘,是真正的绿色版。当您不再使用时,直接删除文件夹即可卸载解压版Tomcat。
建议
建议读者使用解压版Tomcat,除了安装和卸载方便,解压版Tomcat还没有GUI界面,只能通过使用各种配置文件和命令来操作和管理,这利于初学者学习Tomcat的启动和运行流程。这也是大部分Tomcat教材的建议。
电脑是64位,下载64位Windows解压版后得到
apache-tomcat-9.0.39-windows-x64.zip,将其解压缩到计算机某磁盘(最好不要选择C盘)即可。
解压缩完成后,打开Tomcat所在目录,可以看到它包含了很多子文件夹,它们的作用如下表所示:
Tomcat子目录及其说明
子目录 | 说明 |
bin | 命令中心(启动命令,关闭命令……) |
conf | 配置中心(端口号,内存大小……) |
lib | Tomcat 的库文件。Tomcat 运行时需要的 jar 包所在的目录。 |
logs | 存放日志文件。 |
temp | 存储临时产生的文件,即缓存。 |
webapps | 存放项目的文件,web 应用放置到此目录下浏览器可以直接访问。 |
work | 编译以后的 class 文件。 |