论坛首页 Java企业应用论坛

Servlet 3.0、REST、Comet

浏览 2835 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-10-27  
    java EE 5.0 规范的笔墨在EJB3.0与Web Service上,随着万众期待的Struts2.0揭开面纱,Java在Web应用开发上便变得沉闷乏味起来。在JavaOne2007 上有篇 The Future of the Java Technology Web Tier宣讲了Sun的Servlet 3.0、REST、Comet计划,在大家渐渐失望的时候,又在前面吊了一个红萝卜。
Servlet 3.0

Infoq 中文站:Sun向JCP提交了Servlet3.0规范

Infoq 英文站:Sun Submits Servlet 3.0 Specification to JCP

Annotation标注的servlets,可编程访问并动态改变的web.xml,使得以往经常需要重启的web应用配置终于拥有了动态特性,web framework们拥有了热插拔的能力。
Async and Comet support。
RESTul Service。
一堆看上去也不错的特性,如file upload。
Sun,IBM,BEA,Oracle,Apache,RedHat,Interface21加上Hani Suleiman和Jason Hunter作为初始的专家组,Jetty的Greg Wilkins作为支撑成员。

Grizzly, Tomcat and Jetty 会对Comet API Review. Struts Shale, DWR, Spring Web Flow, Wicket会对可插拔Web Framework进行Review,看起来挺民主的。

Comet

    又一个新词,服务端在事件发生时主动向客户端推送--比如股票价格,聊天室信息,比客户端定时轮询服务器,在模型上高得多。但这种HTTP的PUSH的方式实际上有着重重困难如长连接的资源消耗,否则也早大规模实现了。
    Cometed with Jetty ,Advanced IO and Tomcat 6.0  ,Glassfish的Grizzy子项目 ,三个项目在NIO的基础上分别用自己的方法作了支持,而Non-blocking input/output,Delay request handling/response close,Blocking - Non-blocking notification是Servlet 3.0的统一要求。

    Comet实现的新选择 (dlee)
    Real-World Comet-Based Applications(Javaone2007)


REST

    REST作为最轻量级的Service方案(轻的,谁都会写的Service方案--REST与JSON),本来需要框架辅助的东西就不多。如果硬说有,就是URL Mapping,并分拆URL中的参数,以及结果集的转换。Cetia4就是作类似的东西,但在又冒出一堆的REST框架来之前,Servlet3.0先规范一下无疑是好的,真的被无数MVC框架吓怕了。

@UriTemplate(“/images/{imageid}”)
public class MyRestService {
    @HttpMethod
    @ProduceMime(“application/jpeg”)
    public InputStream getImage( @UriParam(“imageid”) String imageId){

          ...
    }
}
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics