`
ThinkInJava
  • 浏览: 21641 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

Servlet 3.0、REST、Comet

    博客分类:
  • Java
阅读更多
    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){

          ...
    }
}
分享到:
评论

相关推荐

    servlet3.0推送聊天室

    在Servlet 3.0的异步环境下,实现Comet变得更加容易。 在实际开发中,我们可以使用Servlet 3.0的异步特性来处理WebSocket连接的生命周期,例如在接收到新消息时,通过异步上下文将消息分发给所有在线的WebSocket...

    Servlet3.0 异步处理 页面推送 Comet 实例

    本实例主要关注的是如何利用Servlet3.0的异步处理来实现页面推送技术——Comet。 Comet是一种Web应用程序架构,用于创建持久连接,允许服务器向客户端(通常是浏览器)实时推送数据。在传统的HTTP协议中,服务器...

    Servlet3.0

    Servlet3.0是Java EE平台中的一个重要里程碑,它在Servlet规范上引入了许多创新特性,极大地提高了Web应用的开发效率和性能。在这个版本中,重点强调了异步处理和反向Ajax的支持,这两个特性使得Web应用能够更加高效...

    servlet 3.0 异步 推送 聊天室

    Servlet 3.0的异步推送(也称为Comet技术)通过在服务器端维持一个打开的连接,可以在有新消息时立即推送到客户端,提高了用户体验。 在这个聊天室示例中,"application.js"文件可能是用于处理前端交互逻辑,如接收...

    Comet Web 应用

    Jetty在较早的版本中就支持Comet,并且Jetty 7预览版实现了Servlet 3.0规范,进一步加强了对Comet的支持。 实现Comet应用时,开发者需要考虑的主要挑战包括服务器的可伸缩性和资源管理。长时间保持的连接会占用...

    test comet servlet

    在"test comet servlet"的场景中,我们可能是在开发一个使用Java Servlet实现的Comet服务。Servlet是Java平台上的一个标准接口,用于处理HTTP请求。通过扩展Servlet,我们可以构建动态Web应用程序,其中包括实现...

    comet4j-tomcat6.jar、comet4j-tomcat7.jar、comet4j.js

    - `comet4j-tomcat7.jar`:此库对应于Tomcat7版本,适应Servlet 3.0规范。Tomcat7引入了一些新的特性和性能改进,使得Comet4J在该版本上的使用更加顺畅。 3. **Comet4J.js**: `comet4j.js`是客户端JavaScript库...

    气泡提示comet技术

    - Servlet 3.0及以上版本引入了AsyncContext,允许开发者创建异步Servlet,从而支持Comet技术。 - 使用Jetty或Tomcat等服务器的特定扩展,它们提供了对Comet的原生支持。 - 利用WebSocket,这是一种HTML5引入的全...

    servlet.api(中文版)

    6. **AsyncContext和 Comet技术**:Servlet 3.0引入了异步处理能力,通过`AsyncContext`可以在后台线程中执行长时间运行的任务,提高Web应用的响应性。Comet技术是一种长连接技术,通过保持客户端与服务器的连接来...

    comet4j整套开发包最新版

    Tomcat6和Tomcat7都是流行的开源Java Web服务器,它们都支持Servlet 3.0规范,为Comet4j提供了运行的基础。这两个JAR文件需要添加到对应版本Tomcat的类路径中,以便服务器可以识别并处理Comet4j的请求。 3. **...

    comet4j推送Demo

    Tomcat7是一个广泛使用的开源Servlet容器,它支持Servlet 3.0规范,这为Comet4j提供了运行环境。 描述中提到的"tomcat7环境下"意味着这个Demo是在Tomcat版本7中运行的,这是Comet4j兼容的一个版本。在Tomcat7中,...

    dwr3.0+spring2.5实现Comet消息推送DEMO

    实现Comet消息推送功能,根据登陆人定向推送,解决刷新页面原有ScriptSession不能及时销毁的问题,DEMO比较简陋,请先进入login.jsp页面登陆。根据登陆名称判断推送目标,可登陆多个用户进行测试。

    comet4j 所需js以及comet4j-tomcat6.jar、comet4j-tomcat7.jar包

    Tomcat是Apache软件基金会开发的一款广泛使用的开源Servlet容器。这两个JAR文件包含了Comet4j与Tomcat集成所需的所有类和资源,使得Comet4j能够无缝地在Tomcat环境中运行。开发者需要将这些JAR文件添加到Tomcat的lib...

    comet demo 向客户端推送例子

    Tomcat 6.0是Apache软件基金会开发的开源Servlet容器,支持各种Java Web应用的部署,包括Comet技术。 首先,Comet的核心在于保持一个开放的HTTP连接,直到有新的数据需要推送或者连接超时。这种连接状态被称为“挂...

    配置tomcat支持comet

    总结起来,配置Tomcat支持Comet涉及修改`server.xml`,启用APR库,配置Executor线程池,以及创建处理Comet请求的Servlet。通过这种方式,我们可以实现服务器主动向客户端推送数据,满足实时性较高的应用场景。

    Tomcat comet 服务器推技术

    前者基于 Servlet 2.5 的异步处理,后者是针对 Servlet 3.0 引入的,提供更简洁的推送接口。 3. **实现方法**: - **Blocking I/O**:Tomcat 使用的 `org.apache.catalina.connector.OutputBuffer` 类,当输出缓冲...

    comet4j-js

    开发者需要创建一个Servlet或者使用Comet4j提供的API来处理来自客户端的连接,并在有新数据时推送到客户端。 3. **客户端集成**:在HTML页面中引入`<script src="comet4j.js"></script>`,然后使用JavaScript API...

    comet4j-tomcat7.jar comet4j.js

    2. **Java Servlet**:由于Comet4j基于Servlet,因此开发者需要熟悉Servlet API,知道如何创建Servlet,处理请求和响应。 3. **Tomcat配置**:学习如何在Tomcat服务器上配置Comet4j,包括添加必要的依赖和配置文件...

    comet4j+tomcat7 demo

    在Tomcat7这样的Servlet容器中,Comet4j可以很好地工作,因为Tomcat7支持持久连接。 在这个Demo中,你将找到以下组件: 1. **源代码**:展示了如何在Java代码中使用Comet4j API来创建服务器端的推送服务,以及如何...

Global site tag (gtag.js) - Google Analytics