corba服务

1  前言

1.1   概述

Corba服务很多,本文档只讨论了CORBA的三种服务:命名服务、事件服务和事件服务。对于每个服务,都讨论了其基本概念和原理、规范中定义的模块和接口以及在JacORB中如何使用该服务。由于水平和时间的关系,文中的描述只是说明大概的意思,有些可能并不准确。

命名服务相对来讲比较独立,也比较简单,但是它很重要。文中对命名服务描述比较全面,唯一比较模糊的地方是 2.2.4 Name、字符串化名字和URL名字的转换规则,读者可以阅读参考资料获得更详细的信息。

事件服务和通知服务是近亲,通知服务直接扩展了事件服务,因此学习事件服务有助于对通知服务的理解。事件服务相对来说比较简单,规范中定义的模块和接口较少。对于有类型事件服务,文中只在附录罗列了相关接口,没有解释,因为这一部分比较难理解,实现也较麻烦,用处不大。同样,文中也没有解释有类型通知服务的模块和接口。有兴趣的读者可以参阅事件服务规范和通知服务规范对这些内容的描述。

        文中的编程示例使用了Java和JacORB。这些例子都是JacORB自带的例子,但是为了读者更容易理解,对个别例子作了部分改动。读者不必奇怪为什么这些例子没有使用IDL,因为这是Corba的标准服务,我们不必定义自己的IDL。

1.2   模块和接口


在Corba规范中,接口一般都定义在模块中。可以把模块想象成命名空间,不同的模块可以包含同名的接口,模块还可以包含子模块。
接口可以继承,并且可以多继承。用IDL定义的接口和模块的一个例子如下:

module Society
{
  module School
  {
    interface Male{};
    interface Female{};
    interface Student{ string getName();};
    interface MaleStudent:Student,Male{};
    interface FemaleStudent:Student,Female{}; 
  };
};
模块Society中有子模块School,子模块School的接口MaleStudent继承了两个接口Male和Student。

2  命名服务(Naming Service)

未完待续
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值