10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

Apache Tomcat 7 成为最新稳定版本

  • 2011-01-26
  • 本文字数:882 字

    阅读完需:约 3 分钟

2011 年 1 月 11 日发布的 Tomcat 7.0.6 已经成为稳定版本,这是 Tomcat 7 分支的第一个稳定版本,用来取代 2007 年 2 月发布的 Tomcat 6。

Apache 决定不在 Tomcat 中添加对 Java EE 6 Web Profile 的完整支持,至少在眼下是这样的。因此 Tomcat 7 中只是简单地增加了 Servlet 3.0 (Java EE 6 中引入的)的支持以及 JavaServer Pages 2.2 和 EL 2.2 的支持。新版本要求使用 Java SE 6 或更高版本。

Sevlet 3.0 是一个重大更新,对规范做了很多细化,重点包括:

  1. 引入了对异步 HTTP 请求和响应的标准化支持。虽然异步支持在 Tomcat 6 里就有了,但那是通过一个非标准的 API 实现的,标准化意味着 Servlet 3 版本可移植到不同容器中。
  2. 动态配置:支持 Web Fragment,库程序可以用它来提供配置,不再需要开发者在应用程序的 web.xml 文件中增加特定于库的配置。
  3. 配置过滤器、监听器和 Servlet 时使用注解,进一步减少了开发者所要编写的 XML 数量。

Servlet 3.0 还大量使用了泛型,改善了会话追踪,引入了新的文件上传功能。

Tomcat 7 中的改进也不是全都针对 Servlet 3.0 API 的,其中还有不少重要的安全性改进。现在针对基于脚本的访问、基于 Web 的访问、JMX 代理访问和状态页访问有了独立的角色,允许做更具体的访问控制。为了避免跨站请求伪造(CSRF)攻击,所有的非幂等性请求(即多次执行不会产生相同结果的操作)都要求生成一个随机数。Tomcat 7 还针对会话固定攻击(session fixation attack)采取了一些防御措施。会话固定攻击就是将客户端的会话 ID 强制设置为一个明确的已知值。

开发团队还将继续致力于解决一些容器内存泄露的常见问题,改善日志系统,改善容器启动时间。

最终 Tomcat 7 会提供一个轻量级 API,允许开发者通过简单的几行代码嵌入容器。

想要使用完整 Java EE 6 Web Profile 的开发者可以在自己的项目里包含 API。然而, Simple Web Profile Application Server (一个由社区主导的项目)正不断发展来弥补这一缺陷。此外 Apache Geronimo (Tomcat 为其提供 Servlet 容器)将支持 Web Profile 和完整的 Java EE 6 Profile。

查看英文原文: Apache Tomcat 7 Becomes Latest Stable Release

2011-01-26 00:219702
用户头像

发布了 135 篇内容, 共 65.4 次阅读, 收获喜欢 43 次。

关注

评论

发布
暂无评论
发现更多内容

颠覆与创新,区块链将成音乐产业的下一个风口

CECBC

图解 SQL,这也太形象了吧!

xcbeyond

MySQL 6月日更

🌏【架构师指南】带你分析认识缓存穿透/雪崩/击穿

码界西柚

缓存穿透 缓存击穿 缓存雪崩 6月日更

雪花算法的原理及实现

架构精进之路

算法 6月日更

「SQL数据分析系列」1. SQL背景知识介绍

Databri_AI

数据库 sql

【21-5】Grafana 时间Panel 如何使用

耳东@Erdong

Grafana 6月日更 panel clock

redis分布式锁原理

Skysper

redis 分布式锁

系统设计系列之任务队列

看山

MQ 6月日更

【Flutter 专题】106 图解 AnimatedWidget & AnimatedBuilder 动画应用

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 6月日更

Kubernetes手记(9)- Ingress 控制器

雪雷

k8s 6月日更

分享8个可以提高开发效率的JavaScript库

devpoint

node.js axios 6月日更

一文带你深入了解 Java 字节码

mghio

技术 后端 Java 25 周年 基础

Java Shutdown Hook 场景使用和源码分析

陈皮的JavaLib

Java 线程安全 Thread

🌏【架构师指南】教你如何设计和规划系统架构(13条)

码界西柚

架构设计 架构设计原则 架构师技能 6月日更

金三银四跳槽季,美团、字节、阿里、腾讯Java面经,终入字节

Java 程序员 架构 面试

马丁策略量化交易系统搭建,网格量化策略系统

Django组队学习Task0

IT蜗壳-Tango

IT蜗壳教学 6月日更 Datawhale

Windows 10 如何设置网络属性为私有

HoneyMoose

【LeetCode】重复的DNA序列Java题解

Albert

算法 LeetCode 6月日更

GitHub已霸榜!阿里技术官肝了3个月才完成的20万字Java面试手册

Java 程序员 架构 面试

网络攻防学习笔记 Day42

穿过生命散发芬芳

网络攻防 6月日更

《原则》(十二)

Changing Lin

6月日更

【译】JavaScript 中几种循环遍历方式对比

KooFE

6月日更

提升代码格调——JavaScript 数组的 reduce() 方法入门

编程三昧

JavaScript 大前端 数组 js ES6

内卷的出路是躺平?

Qien Z.

创新 内卷 6月日更 躺平

立flag(第………………次)

凯迪

随笔杂谈

给dubbo贡献源码,做梦都在修bug

捉虫大师

dubbo

职场礼仪之坐车礼仪

石云升

6月日更 职场礼仪

MySQL基础之十:union与limit

打工人!

myslq 6月日更

贪心算法最优装载问题(Java代码实现)

若尘

数据结构 贪心算法 6月日更

【Vue2.x 源码学习】第十二篇 - 生成 ast 语法树-流程说明

Brave

源码 vue2 6月日更

Apache Tomcat 7成为最新稳定版本_Java_Charles Humble_InfoQ精选文章