Tomcat与JDK版本对应关系以及Tomcat各版本特性

Apache Tomcat是一个开源软件实现了Java Servlet和Java Server Pages技术。不同版本的Servlet和JSP规范可使用不同版本的Apache Tomcat。Tomcat与JDK版本对应关系为:

Servlet规格 JSP规范 EL规格 WebSocket规范 JASPIC规格 Apache Tomcat版本 最新发行版本 支持的Java版本
4.0 2.3 3.0 1.1 1.1 9.0.x 9.0.27 8及更高版本
3.1 2.3 3.0 1.1 1.1 8.5.x 8.5.47 7及更高版本
3.1 2.3 3.0 1.1 不适用 8.0.x(已取代) 8.0.53(已取代) 7及更高版本
3.0 2.2 2.2 1.1 不适用 7.0.x 7.0.96 6及更高版本 (WebSocket为7及更高版本)
2.5 2.1 2.1 不适用 不适用 6.0.x(已归档) 6.0.53(已归档) 5及更高版本
2.4 2.0 不适用 不适用 不适用 5.5.x(已存档) 5.5.36(存档) 1.4及更高版本
2.3 1.2 不适用 不适用 不适用 4.1.x(已归档) 4.1.40(已归档) 1.3及更高版本
2.2 1.1 不适用 不适用 不适用 3.3.x(已存档) 3.3.2(已存档) 1.1及更高版本

下面将详细介绍这些版本,以帮助您确定哪个版本适合您。有关每个发行版的更多详细信息,请参见相关的发行说明。

请注意,尽管我们提供旧版本的下载和文档,例如Apache Tomcat 7.x,但我们强烈建议用户尽可能使用最新的稳定版Apache Tomcat。我们认识到跨主版本升级可能不是一件容易的事,并且列表中仍为旧版本的用户提供了一些支持。但是,由于社区驱动的支持方法,您的版本越旧,感兴趣或能够支持您的人就越少。

Alpha / Beta / Stable

Tomcat主要有三个版本,主要版本的初始发行通常会从Alpha到Beta,再到Stable

Alpha版本可能包含规范中要求的大量未经测试/缺少的功能和/或重大错误,并且预计不会在任何时间段内稳定运行。

Beta版本可能包含一些未经测试的功能和/或许多相对较小的错误。Beta版本预计不会稳定运行。

Stable版本可能包含少量相对较小的错误。稳定的版本旨在用于生产用途,并有望在更长的时间内稳定运行。

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库)
  • 添加了对将OpenSSL用于JSSE连接器(NIO和NIO2)的TLS支持的支持
  • 增加了对TLS虚拟主机(SNI)的支持

Apache Tomcat 8.x

Apache Tomcat 8.0.x建立在Tomcat 7.0.x之上,并实现了 Servlet 3.1,JSP 2.3,EL 3.0 和WebSocket 1.1规范。除此之外,它还包括以下重要改进:

  • 一个单一的公共资源实现,以替换早期版本中提供的多个资源扩展功能。

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运行时和规范要求兼容。(当时无法创建稳定的Tomcat 9.0版本,在几年后才确定了Tomcat 9的Java EE规范)。

Tomcat 8.5被认为是Tomcat 8.0的替代品。请参阅 迁移指南,以获取有关迁移到Tomcat 8.5的指导。

Apache Tomcat 8.5.x包括以下重要改进:

  • 添加对HTTP / 2的支持(需要Tomcat Native库)
  • 添加了对将OpenSSL用于JSSE连接器(NIO和NIO2)的TLS支持的支持
  • 增加了对TLS虚拟主机(SNI)的支持

Apache Tomcat 8.5.x中删除了以下技术:

  • HTTP和AJP连接器的BIO实现
  • 支持Comet API

Tomcat8.5再许多领域发生了重大变化,从而提高了性能,稳定性和总拥有成本。有关详细信息,请参考Apache Tomcat 8.5更改日志。

Tomcat 8.0的用户应该意识到Tomcat 8.0现在已经停止开发。Tomcat 8.0.x的用户应升级到Tomcat 8.5.x或更高版本。

Apache Tomcat 7.x

Apache Tomcat 7.x建立在Tomcat 6.0.x的改进之上,并实现了Servlet 3.0, JSP 2.2,EL 2.2和 WebSocket 1.1规范。除此之外,它还包括以下改进:

  • Web应用程序内存泄漏检测和预防
  • 改善Manager和Host Manager应用程序的安全性
  • 通用CSRF保护
  • 支持直接在Web应用程序中包含外部内容
  • 重构(连接器,生命周期)和大量内部代码清理

Apache Tomcat 6.x

Apache Tomcat 6.x以Tomcat 5.5.x的改进为基础,并实现了Servlet 2.5和 JSP 2.1规范。除此之外,它还包括以下改进:

  • 内存使用优化
  • 先进的IO功能
  • 重构集群

Tomcat 6的用户应该知道Tomcat 6现在已经停止开发。Tomcat 6.x的用户应升级到Tomcat 7.x或更高版本。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 详解Linux 安装 JDK、Tomcat 和 MySQL(图文并茂)

    本文会详细介绍 Windows 上安装虚拟机之后,如何在 Linux 中安装 JDK.Tomcat 和 MySQL 的过程,希望能帮助到你. 首先,这些安装都是在 xshell 中运行的,什么,没有 xshell?好吧,我给你资源.安装之后里面就会有 xshell,直接打开用就行了. 1. 安装 JDK 个人建议安装的时候使用 rpm 包,Linux 中的 rpm 相当于 Windows 中的 exe,使用本文的安装方法无需手动设置环境变量. 在这里给大家提供一份 JDK-8 的资源. 1.1

  • 简单记录Cent OS服务器配置JDK+Tomcat+MySQL

    项目需要部署到一台CentOS的服务器之上,之前这台服务器上面已经安装了一个Nginx和MySQL,跑的是PHP环境,有一个项目正在运行.而我们最新的项目是用Java写的,服务器是用的Tomcat,所以势必需要把Nginx和Tomcat做一次整合,不过目前项目还在开发阶段,我们就先使用Tomcat默认的8080端口,好了,下面就大概你的"终端"(因为我使用的是Mac系统,默认有SSH,如果是Win系统,请选择其他对应的工具,相信G神会帮助你的~~). 第一步:连接服务器 租用的服务器支

  • linux安装jdk,tomcat 配置vsftp远程连接的步骤

    不知不觉入行也有一年了,这两天在公司上班有空了就自己装了个vmware虚拟机,装了个红帽6.1完全命令行的操作系统,想着搭个公司现在在用的测试环境,没想到中间碰到了很多问题,不过大部分都解决了,现在可以达到自行上传项目等等操作,在这里把这两天学习的东西记录一下,防止记忆丢失. 一开始,要下载安装虚拟机,我选的是vmware,当然你也可以选择别的虚拟机,比如virtualBox等,虚拟机只是用来装操作系统的一个工具而已,当然vmware可能更强大一些,但是对于我们现在做的操作,随便一个工具就可以.

  • Tomcat+JDK安装和配置教程

    Tomcat+JDK安装和配置 一.打开FlashFXP软件,建立连接,选择需要的包,右击传输到/home/guest中 二.进入到:cd /home/guest中,对tomcat包进行解压 三.将tomcat移动到: /usr/local/tomcat中 四.修改环境变量:vi /etc/profile,在底部输入以下内容 五.安装JDK,将安装包传输到/home/guest中 六.在目录下复制安装包到: /usr/local中 七.对安装包进行授权:chmod +x,检查是否授权成功 八.安

  • 详解Linux下JDK、Tomcat的安装及配置

    1.jdk的安装 1.1下载jdk 先查看Linux系统是多少位(32位/64位):getconf  LONG_BIT.再从JDK官网(http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html)下载JDK 7,Linux 64位下载jdk-7u60-linux-x64.tar.gz. 1.2解压安装 1.2.1选择安装JDK的位置/usr/Java,如果存在这个目录无需创建,一般新到的机

  • Tomcat与JDK版本对应关系以及Tomcat各版本特性

    Apache Tomcat是一个开源软件实现了Java Servlet和Java Server Pages技术.不同版本的Servlet和JSP规范可使用不同版本的Apache Tomcat.Tomcat与JDK版本对应关系为: Servlet规格 JSP规范 EL规格 WebSocket规范 JASPIC规格 Apache Tomcat版本 最新发行版本 支持的Java版本 4.0 2.3 3.0 1.1 1.1 9.0.x 9.0.27 8及更高版本 3.1 2.3 3.0 1.1 1.1

  • Eclipse配置Tomcat和JDK步骤图解

    第一次Eclipse配置Tomcat和JDK都会遇到一些问题,小编当时也一头雾水,所以特对此进行了总结,希望可以帮到大家. A:需要的软件及版本: 1.      eclipse-jee-kepler-SR1-win32 2.      apache-tomcat-6.0.37 3.      jdk-7u25-windows-i586   B:配置方法 1. 配置tomcat:Window-Preferences 2.选择Server-Runtime Environments-在右侧点击Add

  • Tomcat修正JDK原生线程池bug的实现原理

    为提高处理能力和并发度,Web容器一般会把处理请求的任务放到线程池,而JDK的原生线程池先天适合CPU密集型任务,于是Tomcat改造之. Tomcat 线程池原理 其实ThreadPoolExecutor的参数主要有如下关键点: 限制线程个数 限制队列长度 而Tomcat对这俩资源都需要限制,否则高并发下CPU.内存都有被耗尽可能. 因此Tomcat的线程池传参: // 定制的任务队列 taskqueue = new TaskQueue(maxQueueSize); // 定制的线程工厂 Ta

  • 聊聊maven与jdk版本对应关系

    目录 maven与jdk版本对应关系 解决方式(windows) maven和java的jdk版本不同 怎么改成一样的呢? maven与jdk版本对应关系 很多搬砖的小伙伴在使用maven项目打包的时候,都会遇到下面的编译问题: Caused by: java.lang.UnsupportedClassVersionError: org/apache/maven/plugin/compiler/CompilerMojo : Unsupported major.minor version 51.0

  • 详解Tensorflow不同版本要求与CUDA及CUDNN版本对应关系

    参考官网地址: Windows端:https://tensorflow.google.cn/install/source_windows CPU Version Python version Compiler Build tools tensorflow-1.11.0 3.5-3.6 MSVC 2015 update 3 Cmake v3.6.3 tensorflow-1.10.0 3.5-3.6 MSVC 2015 update 3 Cmake v3.6.3 tensorflow-1.9.0

  • 浅谈anaconda python 版本对应关系

    2020.2.20 更新日志: 本文的初衷是因为安装anaconda的时候你并不知道会包含哪个版本的python,因此我制作了下表 如果你使用的主要的python版本能在下表中找到,那安装对应的anaconda当然更好 但是如果你只是临时想用某个版本的python,或在下表中找不到对应的,你大可以直接安装最新的anaconda,然后用conda create来创建虚拟环境即可,不用非得找到对应的anaconda来装. 最佳的策略是你的机器上只保留一个anaconda,其中包含着你最常用的pyth

  • 关于Torch torchvision Python版本对应关系说明

    目录 1. torch- torchvision- python版本对应关系 2. CUDA Toolkit 和PyTorch的对应关系 3. 安装说明 3.1 用anaconda安装pytorch 3.2 不用Anaconda来管理环境 3.3 对NVIDIA驱动的要求 3.4 下载 .whl 文件离线安装 1. torch- torchvision- python版本对应关系 2. CUDA Toolkit 和PyTorch的对应关系 3. 安装说明 3.1 用anaconda安装pytor

  • SqlServer高版本数据备份还原到低版本

    最近遇见一个问题: 想要将Sqlserver高版本备份的数据还原到低版本SqlServer上去,但是这在SqlServer中是没法直接还原数据库的,所以经过一系列的请教总结出来一下可用方法. 首先.你得在电脑上装有你将要操作的高版本以及低版本的SqlServer或者你能够连上SqlServer高版本所在的数据库(便于后面拷贝数据), 第二步.打开高版本数据库中你需要备份的数据库,将你备份的数据库相关的登录名或者用户删除.右键数据库->任务->生成脚本.在生成脚本的"选择对象"

  • sqlserver数据库高版本备份还原为低版本的方法

    问题描述:高版本sql备份在低版本sql还原问题(出现媒体簇的结构不正确) 分析原因:sql版本兼容问题,sql server兼容级别是用作向下兼容用,高版本的sql备份在低版本中不兼容 解决方法 : 1.通过管理器的脚本生成向导,把其他数据库 ,表,存储过程等对象的脚本生成,然后在低版本的sql server下执行建立这些对象.. 2.通过dts/ssis,将表中的数据导过去. 此处我们把第1种开发方法 做下详细介绍(以sql2008的其他数据库 还原到sql2005为例). 1.首先我们在s

  • Android 高版本API方法在低版本系统上的兼容性处理

    Android 版本更替,新的版本带来新的特性,新的方法. 新的方法带来许多便利,但无法在低版本系统上运行,如果兼容性处理不恰当,APP在低版本系统上,运行时将会crash. 本文以一个具体的例子说明如何在使用高API level的方法时处理好兼容性问题. 例子:根据给出路径,获取此路径所在分区的总空间大小. 在安卓中的文件存储使用参考中提到: 获取文件系统用量情况,在API level 9及其以上的系统,可直接调用File对象的相关方法,以下需自行计算 一般实现 就此需求而言,API leve

随机推荐