当前位置:文档之家› java和.net两大平台的分析及互用

java和.net两大平台的分析及互用

摘要在Java平台推出并发展了十多年后, Microsoft的 .net平台闪亮登场,到现在为止,也已经发展了几年了,从最初的版本发展到现在的2.0版本。

java平台有着许多闪亮的地方,而后到的.net平台也有其过人之处。

但是本文所关心的并不是java平台和.net 平台,谁比谁更优秀或谁是谁的终结者,而是两者各自有什么特点,如何和平共处,实现彼此之间的互用。

因为两者实现互用将为软件行业带来极大的惊喜,为企业节省很大的软件投资,包括时间和成本。

本文首先是对java平台和.net平台进行了一个简单的介绍,对这两个平台进行了简单的分析,并且指出了这两大平台各自的优点。

接着讲述了这两大平台实现互用的必要性, 基础和所面对的挑战,然后介绍了实现互用的基本方法: 代码转换, 第三方运行时桥, xml webservice, 面向消息的中间件, 共享数据库, 集成代理程序。

最后是针对互用的未来发展,讲述了一些个人的看法。

毕竟现在的互用技术并不是相当的完善,还有待进一步的发展和提高。

但是相信经过世人的努力,java平台和.net平台的互用将会得到更好的实现,甚至实现所谓的“完美”的结合。

本文只是讲述了java 和.net 的基本知识和基本的互用实现,对于当中的许多复杂问题,如,实现单点登录(共享session),实现事务性,实现安全性……没有进行论述。

关键词: .net远程处理, java, .net, 互用, 互联网服务, xml, 消息, 序列化ABSTRACTJava platform has born and developed for about ten years. After that, Microsoft .net was born and has developed for several years too, from the newest version to the 2.0 version. Java platform has much advantage. But the .net platform also has much advantage. This article does not care about java platform and .net platform who is whose terminator, just want to show the advantage of java platform and .net platform and how to achieve interoperability of java and .net, because if these two platforms can achieve interoperability, it will give the software industry a great surprise, save the money and time for the enterprise. This article first gives a simple introduction about java platform and .net platform, point out the advantage of both java platform and .net platform. Then, talk about the necessary, the base and the challenge of achieving interoperability between these two platforms. Code changing, third party runtime bridge, xml web service, Message-Oriented Middleware, sharing database, Integration Brokers and Orchestration are the basic methods used to achieve interoperability. At the end of this article, there is some opinion of myself about the future of the interoperability. I believe that interoperability of java and .net would be more and more perfect. In this article, some complex issues, such as sharing session, achieving transaction, security etc are not related to.Keywords:.net remoting, java, .net, Interoperability, web service, xml, message, serialization目录摘要 (I)ABSTRACT (II)1绪言 (1)2认识JAVA平台 (2)2.1J AV A简介 (2)2.2J AV A的优势 (5)3认识.NET平台 (7)3.简介 (7)3.的优势 (11)和JAVA的互用 (13)4.1互用的基础和所面对的挑战 (13)4.2实现互用的基本方法 (20)4.2.1通过代码转换实现互用 (20)4.2.2通过第三方运行时桥实现互用 (22)4.2.3通过X ML WEBSERVICE 实现互用 (33)4.2.4使用面向消息的中间件来实现互用 (40)4.2.5通过共享数据库来实现互用 (41)4.2.6利用集成代理程序来实现互用 (42)4.3互用的未来发展 (44)5总结和体会 (45)致谢 (46)参考文献 (47)1 绪言“互用”,是指使用行业标准或被广泛认可的数据描述和通讯协议,在采用不同技术实现的不同平台上运行的功能单元之间进行通讯或者传输数据的能力。

许多组织已经运行了基于 Java 或 Microsoft .NET 的大型企业环境。

因此如果公司考虑使用新的应用程序或为当前的体系结构增加额外的内容,会习惯性地倾向于从当前已经实现的环境开始考虑。

这种情况有时称为对技术进行调整的环境,制订有关增强当前环境的决策更倾向于在一直运行的旧环境上进行调整,而不是基于可提供最佳平台的新环境。

到目前为止,java平台已经发展了十几年了,许多企业采用java平台建立了自己的应用程序,基于java平台的应用程序数目无法估计,而当中的企业级的应用程序也不少.但是后到的.net 平台,虽然只是发展了短短数年,但是它吸取了java 的成功之处再加以改良,在一些方面已经是超出了java的了,它的发展势头也不可忽视。

java,.net两平台是各有千秋。

有些的企业就希望把自己原来的基于java 的应用迁移到.net平台上去。

或是把自己原来基于.net的应用迁移到java平台上去。

但是如果采用改换平台从头开发的方法的话,那么不管是从时间上还是从成本上来说都是相当巨大的,特别是当前的应用程序是数年的开发成果,规模巨大,那么更是难上加难了。

而且这样做的话也会造成了巨大的浪费,使之前的很多的优秀的应用程序变得英雄无用武之地了。

那么我们当然是希望能有一些工具或是方法能实现java和.net 之间的互用,使它们一起协调工作。

从而使原来的应用程序得以继续使用,充分发挥它们的功能,而不用再完全从头再来,这样就大大的节省了时间和成本。

正是为了节省企业宝贵的时间和投资,从而产生了java,.net互用的必要性。

针对“java和.net互用”这个问题,国外已有不少公司提出解决的方法,也出现了不少的工具,可以说在国外这个问题已经有了很长一段时间的研究了,也已经取得了不少的成果。

而现在我们正是要了解国外的研究成果,进行学习和探索。

要实现java,.net的互用,我们必须先了解一下这两个平台的特点和实现互用的基础,然后才能对其互用的实现进行更好的探索。

2 认识java平台2.1 Java简介Java首先是作为家用电器,如电烤箱,微波炉和个人数字式助理等家电设备的编程语言面世的。

家用电器的软件有独特的设计要求。

Sun公司的一个在戈斯林(james gosling)领导下的小组很快发现,现有的编程语言,如C或C++都不能完全满足这种要求。

用C或C++编写的程序必须针对某个特定的芯片编译和才能使用。

当出现了新的芯片后,原程序必须重新编译。

同时C和C++的复杂性使得编写可靠程序的难度很高。

于是戈斯林在1990年开始动手设计更适合消费类家用电器软件要求的新型编程语言。

这一语文刚开始时代号为“OAK”,它的规模很小,很可靠,而且与硬件体系无关。

1993年,在java工作组继续设计这一新语言时,INTERNET上出现了WWW,而且发展势头很猛烈。

Java开发人员发现像java这样与硬件体系无关的语言用于互联网编程是非常理想的,因为这样的程序可以运行在由不同类型的计算机连接而成的互联网网络上。

事实上java所有的设计是非常适合于互联网的编程的。

这时java的开发对于Sun来说具有的新的重要意义。

原小组设计了一种Web浏览器,称为HOTJAVA,这是第一种支持JAVA APPLET的WEB 浏览器。

HOTJAVA以一种非常直观的方式向程序员和其他人们展示了JAVA的威力,接着JAVA就飞煌腾达了。

1997年初,SUN推出了JAVA1.1版本,在运行速度等性能上有了大幅度的提高,同时规模也在膨胀。

在1998年下半年,SUN推出了JAVA 2 PLATFORM,这已经是一个健壮而成熟的计算平台了。

在sun的公司原来出版的技术白皮书中,java的定义如下:java: 一种简单的,面向对象的,分布式的,解释型的,健壮的,安全的,体系中立的,可移植的,高性能的,多线程的,动态的语言。

⑴简单性:java的原设计小组的第一个目标是创造出一种程序员可以迅速学会的语言,因此这种语言的结构保留得很小。

另一个设计目标是让这门语言在外观上应该让大多数程序员感到很熟悉,从而使程序员很容易掉头使用这一新的开发工具。

Java 和C和C++有相同的结构,但是又去掉了C和C++中的许多特性。

⑵面向对象:java是一种“面向对象”的语言。

对于程序员这意味着,你可以将精力集中在应用程序的数据和对数据操作方法上,而不是严格按照过程的观点去思考。

在面向对象的系统中,“类”(class)是数据和运算这些数据的方法的集合体。

相关主题