如题,不知道有人有这样的小例子不?我要实现的就是从后台实时产生的数据,不停的在前台jsp页面上面更新展示,但是前台的页面只有一次请求,而不是多次请求,看了好多,都是长轮询,不停的发送请求,我需要长连接,只发生一次请求,如果有这样的例子给小弟,不胜感激,也可以直接给我邮箱:[email protected]

解决方案 »

  1.   

    http是请求——响应的,你没有请求它就不会响应。你要是请求一次,只能把请求一次的数据全部拿出来然后显示,如果数据更新了,你只能再请求,才能拿到数据。你用ajax异步请求吧,那样可以实时更新数据。
      

  2.   

    你意思就是不停的发请求,才能达到实时更新?
    这样很影响系统性能,我想要 实现长连接,一次请求,然后就能一直保持连接,我看servlet3.0新特性支持这点的,我就是没找到例子,求达人解答啊
      

  3.   

    http协议的角度,长连接没问题。
    Server端的输出流不close掉, 连接就会保持。
    用http传输整个文件都没问题。
    你自己编写client就行。问题是Web浏览器作client就有问题了。
    通常browser是要连接close以后才展示内容,
    弄长连接的后果就是一直显示loading网页。当然是有某些例外的。
    比方说server传个plain text 给浏览器,
    大多数浏览器会一边收到一行数据就一边显示一行数据,直到连接结束。
    但整个过程,浏览器不能响应用户任何操作,所以没什么用。
      

  4.   

    恩,谢谢,不知道你看过serlvet3.0新的异步请求,我就想知道那个
      

  5.   

    IBM developerWorks 上有一个例子Servlet 3.0 实战:异步 Servlet 与 Comet 风格应用程序
    http://www.ibm.com/developerworks/cn/java/j-lo-comet/index.html