之前我们采用的都是socket的方法实现网络通信,事实上有许多其他不同的方法可以实现网络通信。
1.JavaRMI
JavaRMI(Java Remote Method Invocation)是java语言中的各个对象之间借助网络来进行数据交换的数据结构。注意是各个对象之间。采用JavaRMI可使在不同机器上运行的个java对象之间像在同一台机器上运行一样进行相互通信。由于对象是在网络系统上分布运行的,因此这样的系统称为分布对象系统。
在采用javaRMI的分布对象系统中,运行于不同的JavaVM上的Java对象之间可以自由的进行数据交换。
当然,在这种分布式系统中,仍然可以采用socket进行通信。但是采用socket进行通信时需要做很多与网络使用相关的准备工作,而且,使用socket通信的基本原理是每次只能发送一个字符,因此,当需要传送整数或者实数,或者要传送有一定结构的数据是,需要将这些数据调整转换成单个字符为单位的形式,如果采用JavaRMI就省去了这种麻烦,可以构建更容易使用的分布对象系统。
具体使用会在以后详述。
2.分布对象系统(CORBA):
分布对象系统(CORBA)是将OMG(object managemengt group)进行标准化,支持分布对象技术的一种架构。
同JavaRMI一样,分布对象系统提供的是一种用于构建分布对象系统的结构,从这个意义上说,JavaRMI与分布对象系统是用于同一目的