hotjava

HotJava是一个模块化、具扩展性的网页浏览器,由太阳微系统所推出,并且可在网页中运行小型的Java程序,称为Java Applet。

HotJava是一种WWW(World Wide Web)浏览器,也是完全用Java语言编写的主要面向最终用户的应用。开发者将其产品起名"HotJava(热咖啡)"的目的也许是想让人们在使用HotJava时像喝一杯热气腾腾的咖啡那样适意、轻松。

Java的酝酿始于1990年,正式推出是在1995年的5月,HotJava浏览器则是与Java语言同期推出的,它是第一个基于Java语言及其运行系统而建立的应用。HotJava不仅充分显示了Java语言环境的威力,而且为在更复杂、离散、异构的Internet网上进行分布式Java编程提供了一个理想的平台。

HotJava本身带有一系列的实用工具,为用户提供了高度的安全性。它的安全性表现在以下两级上

第一级:Java语言解释器HotJava的第一级安全性来自Java语言自身的特性。其安全性表现在以下几个方面: ·在使用Java语言编写应用程序时,在需要进行大量的编译时和运行时进行二级检查,从而减少了开发人员的出错机会; ·Java用运行时间系统来管理用户的内存,在内存管理模块中,语言基本上没有指针及指针的相关算法,这样,用户程序不会有指针悬空、内存溢出和内存冗余的现象发生; ·在Java的运行时间系统中,内置了防病毒和损害文件系统的保护机制,这样即使从Internet网上卸载或者修改Java应用程序,最终用户也是非常安全的; ·Java禁止未授权的代码对Java程序进行干预,因此保证了程序的安全性。 当代码模块被移植入HotJava中时,它实际上并不知道代码模块是否具有Java语言规则带来的安全性,因为本地的Java语言编译器不可能产生这种安全性。移植的代码由一系列检查所控制,开始是直接测试代码的格式是否正确,最后是由识别器进行一系列一致性检查。实际上,HotJava的一级安全性可以说是Java语言环境安全性的继承。

第二级:高层协议这一级安全性基本保证了界面级不会受到侵犯,它在系统的较高层实现了保护机制。例如文件访问初始化时,产生一个访问控制表,该控制表负责对移植代码形成(或由其衍生)文件的读/写访问实施控制。这些访问控制表的缺省值要求非常严格,如果一段移植代码试图去访问未被允许访问的文件,诊断箱允许用户来判定是否让其作指定的访问。

在使用第一代浏览器时,用户需要知道有关Internet数据格式、通讯协议以及硬件线路连接方面的知识,有了HotJava以后,情况就大不相同了。它可以将不同的数据格式协调起来,并可随时通过网络添加新的文件格式,用户无需知道各种通讯协议的内容。因此,与第一代浏览器相比,HotJava浏览器有几个重要特点:

1.动态伸缩性HotJava可以动态伸缩,它可以从网络上的任何一个地方随意卸载Java应用程序(applets),并在用户的本地客户机上运行。而且,HotJava增加了可将静态文档变换为动态应用的动态特性,从而扩展了浏览功能。它在网络上的浏览技术取自Mosaic和其它浏览器产品。 动态性表现在以下三个方面:首先,内容是动态的。例如,用Java语言编写一段程序,配以HotJava应用程序接口,用于实现化学实验的交互式仿真过程,结果使人们可以用HotJava浏览器通过网络轻而易举地看到实验的仿真变化情况,并且还能与其交互,而不只是一些文本的静态图像。而且,实现化学实验呈活动状态的代码不包含可能损害系统的代码,因为这部分代码继承了Java语言安全性和稳定性的特征。 其次,类型是动态的,HotJava可以支持多种不同的对象类型,例如绝大多数Web浏览器支持一些图像格式的集合,如GIF、Xll pixmap、Xllbitmap,再遇到其它格式的图像信息就无法直接进行处理;HotJava则不然,它可以随意将代码连接到新的显示格式,每遇到新的类型,HotJava浏览器就对其自身进行修整,以动态地适应变化的格式。 协议也是动态的。Internet主机进行通讯的协议是网络的关键部分,其中,HTTP是WWW通讯协议中最重要的一种,WWW中与文档相关的部分被称为URL,当前的Web浏览器支持内置HTTP协议。HotJava则不采取这种方法,它让协议名与适当的协议句柄连接,这就使新的协议动态地协调起来。协议的动态协调性在Internet上有着特殊的意义,在通常情况下,如果用户在多个具有不同协议的服务器上访问数据,用户就需要多个浏览器。使用HotJava浏览器则是被赋予一个参数在一个目标上(URL)。如果协议句柄已经安装,这种协议就直接可用,否则HotJava就搜索一个本地系统作为URL的目标系统。

2.更好的交互性HotJava带来了更多的Web浏览器的交互性,可将当前浏览器上的静态数据显示变换成超文本的新型动态、动画式、交互式的浏览系统,进行浏览的开发人员只需击打一下按键,即可通过Internet发布他们的应用。 HotJava没有采取第一代浏览器那样的单一方法,而是将交互性的焦点从Web服务器集中到Web客户机上,即集中到用户要浏览Web的计算机上。由于其基于Java语言系统,HotJava浏览器的客户可以动态地卸载在客户机上运行正确的代码段。这样的Applet可以提供全动画、声音效果和与用户的实时交互。 HotJava动态性取代了Mosaic一类的第一代浏览器静态的特征,用户的应用涵盖了从交互式的以教学为主的科学试验,到游戏、专门的购物应用,还可以实现广告、报纸,以及一系列还没有想到的主要应用。 需要强调的是,HotJava为用户访问这些应用提供了一种全新的方法。你需要的软件可以透明地通过网络传输到用户的本地客户机,用户不必刻意去安装某个应用,什么时候需要,就可以随时从网上传过来。WWW的内容开发者不必担心安装在用户系统中的是否是特殊的软件代码,它只需自动地获取就行了。

1994年,Java开发人员仿照了Mosaic开发出以Java编程语言为基础的浏览器WebRunner。WebRunner的首次公开展示由约翰·盖格和詹姆斯·高斯林于1995年蒙特雷的TED大会进行。同年5月在SunWorld会议正式宣布更名为HotJava。

事实上,太阳微系统在1995年发表了Java编程语言后,由于当时的网页浏览器多数只能浏览网页内的静态数据,如文字、表格、图形等,尚无法在网页中运行程序,而太阳微系统希望让Java程序成为浏览器上最普及使用的程序,初期特别是积极于容量小,容易在带宽有限的互联网上传输、下载的Java Applet,而当时多数的浏览器尚无法支持与运行Java Applet 。

不过,HotJava虽可执行Java Applet程序,但真正用于一般网页浏览的效果及支持并不佳,人们依然习惯使用网景公司的网景导航者网页浏览器,或是微软公司的Internet Explorer网页浏览器,特别是太阳微系统为了让各种浏览器都可以运行Java Applet,所以也推出Java插件,安装此软件即可让多数的网页浏览器也能运行Java Applet。

因此,既然许多网页浏览器也能运行Java Applet,以致HotJava几乎只有Java Applet编程语言的初学者用来练习撰写程序的效果验证之用,并未获得进一步普及,此后到了1999年太阳微系统方面也宣布停止此套HotJava的后续发展,终止前的最后一版是HotJava 3.0。

跳转^微软为了对付Java Applet而提出ActiveX技术,不过当时也积极推行IE的使用,所以让IE同时支持Java Applet与ActiveX的运行。

跳转^由于Java Applet运行缓慢,且又缺乏直觉便利的程序开发工具,自1999年开始逐渐被当时Macromedia公司所提出的Flash技术给取代。

相关词汇