基于Java的推送技术实现动态更新页面内容

需积分: 9 14 下载量 71 浏览量 更新于2024-12-31 收藏 32KB DOC 举报
用推送技术动态更新页面内容 一、动态内容更新的需求 随着互联网技术的高速发展,Web页面中的动态内容更新已经成为了一个必不可少的部分。大多数热门Web网站都从在线广告业务获利,而广告客户需要在有限的广告空间内塞入大量的信息,并且要保证广告能够吸引用户的注意力。在当前的大多数网站上,放入Web页面的横幅广告一般由服务器在构造页面的同时生成,我们无法把新的广告动态地插入到已经发送出去的页面。 二、传统方法的缺陷 在过去,我们可以用编程的方法刷新页面,例如:使用浏览器窗口对象的setTimeOut函数定期地刷新页面。但是,用这种方法刷新广告时,用户会很明显地感到页面刷新过程;同时,要确定一个合适的刷新频率也很困难。把页面的过期时间设置为数秒时间,使得无论何时输入焦点转到该页面(即浏览器被激活)时,浏览器就会重新下载该页面。 三、Java实现内容推送的解决方案 为了解决传统方法的缺陷,我们可以使用Java实现内容推送。结合JavaScript帧间通信和一个管理网络通信的Java Applet,我们能够用推送技术解决这个问题。在这样一个系统中,Java Applet的任务是连接服务器并监听内容更新。一旦接收到了新的内容,Applet就构造出显示这些新内容的HTML代码,调用一个JavaScript函数并把包含新内容的HTML传递给JavaScript函数。JavaScript函数运用DHTML和DOM技术,把页面中一个<div>标记的内容用参数中传入的新内容替换。 四、Java Applet与JavaScript代码之间的通信 在整个处理过程中,最困难的任务是Java Applet与JavaScript代码之间的通信。由于浏览器安全的限制,Applet所打开的Socket端口只能连接到下载该Applet的服务器。因此,我们需要一个接受Applet的Socket连接请求的网络应用服务。这个网络应用服务定时地查询数据库,把改动数据发布(推送)到所有已经连接的Applet。 五、隐藏帧和JavaScript的帧间通信功能 运用了隐藏帧和JavaScript的帧间通信功能,我们能够从用户面前隐藏大多数JavaScript逻辑。这使得用户可以无缝地获取最新的内容,而不需要刷新整个页面。 六、结论 用推送技术动态更新页面内容可以解决传统方法的缺陷,提供了一个更好的用户体验。通过使用Java Applet和JavaScript,我们可以实现动态内容更新,提高网站的整体体验。