background image

3)

  两者都经过特有的销售商的产品进行发布。J2EE 规范自己是“销售中立”的,但实际上

那些遵从规范的产品都必须实现规范外的特性,例如管理特性或是展开特性。因此,这
些产品必须是对应特定的销售商。例如

Microsoft 公司的 Windows 和.NET 系统。

4)

  Windows .NET Framework 和基于 J2EE 的产品都和第三方的产品一起工作。例如,在后

端数据库领域,

.NET 和基于 J2EE 的应用程序能访问储存在 Microsoft 的 SQL 服务器 、

IBM 的 DB2、Oracle,Informix、Sybase 等服务器里面的数据。再举一个例子,.NET 和基

J2EE 的系统能访问流行的信息中间设备,如 Microsoft 的 MSMQ 或是 IBM 的

MQSeries。同样,也包括文件系统,第三方开发工具,代码版本系统,防火墙等。

不同点

1)

  原理

J2EE 是一个单一语言的平台,关注跨平台的可移植性。这就意味着,要利用

J2EE,设计方案能使用多个操作系统其中的一个,但开发者必须接受关于 Java 的培训 。
Microsoft 提供的.NET 构架作为 Windows 系统的一部分。开发者能使用多种语言,并且
效率很高而不用进行一种新语言的重新训练。但

.NET Framework 是 Windows 系统的一

部分。

2)

  宽度和广度

a.       .NET 包括代码、产品、工具和构架,来利用网络上全部的计算资源,包括设备、个

人电脑和服务器等。

.NET 使所有的这些设备能经过标准通讯协议全部连接在一起,

即所谓的

“XML WEB 服务”。(.NET 应用程序可以和任何一个系统连接,无论系统

用什么语言和平台,甚至是

J2EE。只要目标系统遵照 XML WEB 服务标准。).NET

模型是广泛的分布式计算,它和许多代码互相通讯并交换信息。

b.       J2EE 是面向服务器的模型,它并不开发网络上的智能和计算功能。总的来说,基

J2EE 的产品只支持服务器端的应用程序。J2EE 一般把 PC 只看作是一个 HTML

的浏览器,而将这些设备认为是哑终端。至于

XML WEB 服务,现有的协议标准支

持分布式的计算,现有版本的

J2EE 规范并没有提到 XML WEB 服务的问题,但是

基于

J2EE 的产品在添加了附加装置后也可以支持 XML Web 服务。然而,添加附加

装置也就意味着有严格的限制。例如,还不清楚现有的规范是否允许

EJB 调用 Web

服务,虽然

Web 服务的组件能调用一些 EJB 程序。

3)

  编程模型的一致性

Windows .NET Framework 提供了一个跨服务器、PC 和其它设备的一致的、面向组

件的模型。而

J2EE 提供 EJB 作为服务器端的组件模型;为客户端或是本地组件建立开

放的完全用

Java 编写的 API;为用户界面提供 servlet;也为移动设备提供另一种不同

的模型。甚至在

EJB 内部也有至少 3 种明显不同的子模型,每一种子模型都有不同的语

言定义。

 
Microsoft 的.NET 编程模型与 Java 平台相比较,在各种服务器和客户端上有更好

的一致性。

J2SE 是基于开放的完全用 Java 编写的 API,而 J2EE 是基于 Java servlet 和

EJB。

DH Brown, 2002 年 7 月
 

4)

  功能

a.       Windows .NET Framework 提供一个能识别版本的类加载器,这就意味着应用程

序的开发者能确保他们开发的应用程序在一部分代码已经更新的情况下仍能运行。