BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Apache Tomcat 7成为最新稳定版本

| 作者 Charles Humble 关注 796 他的粉丝 ,译者 丁雪丰 关注 3 他的粉丝 发布于 2011年1月27日. 估计阅读时间: 3 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

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

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT