java中rmi和corba的区别
来源:互联网 发布:flex布局 仿软件 编辑:程序博客网 时间:2024/04/29 10:41
java中rmi和corba的区别:
1、定义接口:
rmi自己定义接口(interface)
corba生成idl代码,然后使用idlj -fall name.idl生成接口和几个类文件
2、启动服务:
rmi启动的是rmiregistry (port)默认1099
corba启动的是tnameserv
3、实现的继承类:
rmi extends UnicastRemoteObject
corba extends 运行idlj时 生成的_NameImplBase
4、实现类的rebind
rmi可以直接rebind 如:Naming.rebind("rmi://localhost/meeting",meetingserver);
corba需要先调用init()如:
ORB orb=ORB.init(avgs,null);
MOTDImpl impl=new MOTDImpl(motdFile);
orb.connect(impl);
org.omg.CORBA.Object objRef=
orb.resolve_initial_references("NameService");
NamingContext ncRef=NamingContextHelper.narrow(objRef);
NameComponent nc=new NameComponent(motdService,"");
NameComponent[] path=new NameComponent[]{nc};
ncRef.rebind(path,impl);
这里corba就要麻烦很多了
5、客户端调用corba的调用跟实现类的绑定差不多如:
ORB orb=ORB.init(avgs,null);
org.omg.CORBA.Object objRef=
orb.resolve_initial_references("NameService");
NamingContext ncRef=NamingContextHelper.narrow(objRef);
NameComponent nc=new NameComponent("MessageOfTheDay","");
NameComponent path[]=new NameComponent[]{nc} ;
org.omg.CORBA.Object motdObj=ncRef.resolve(path);
MOTD motdRef=MOTDHelper.narrow(motdObj);
System.out.println(motdRef.getMOTD());
rmi只要lookup就可以了
总的来说其实rmi和corba都差不多,都是桩和框架,两者相互竞争,但是在java中都可以相互调用。这归功于rmi_iiop.
1、定义接口:
rmi自己定义接口(interface)
corba生成idl代码,然后使用idlj -fall name.idl生成接口和几个类文件
2、启动服务:
rmi启动的是rmiregistry (port)默认1099
corba启动的是tnameserv
3、实现的继承类:
rmi extends UnicastRemoteObject
corba extends 运行idlj时 生成的_NameImplBase
4、实现类的rebind
rmi可以直接rebind 如:Naming.rebind("rmi://localhost/meeting",meetingserver);
corba需要先调用init()如:
ORB orb=ORB.init(avgs,null);
MOTDImpl impl=new MOTDImpl(motdFile);
orb.connect(impl);
org.omg.CORBA.Object objRef=
orb.resolve_initial_references("NameService");
NamingContext ncRef=NamingContextHelper.narrow(objRef);
NameComponent nc=new NameComponent(motdService,"");
NameComponent[] path=new NameComponent[]{nc};
ncRef.rebind(path,impl);
这里corba就要麻烦很多了
5、客户端调用corba的调用跟实现类的绑定差不多如:
ORB orb=ORB.init(avgs,null);
org.omg.CORBA.Object objRef=
orb.resolve_initial_references("NameService");
NamingContext ncRef=NamingContextHelper.narrow(objRef);
NameComponent nc=new NameComponent("MessageOfTheDay","");
NameComponent path[]=new NameComponent[]{nc} ;
org.omg.CORBA.Object motdObj=ncRef.resolve(path);
MOTD motdRef=MOTDHelper.narrow(motdObj);
System.out.println(motdRef.getMOTD());
rmi只要lookup就可以了
总的来说其实rmi和corba都差不多,都是桩和框架,两者相互竞争,但是在java中都可以相互调用。这归功于rmi_iiop.
- java中rmi和corba的区别
- XML和RMI、Corba等的区别
- RMI, RPC, CORBA区别
- RMI-IIOP:RMI 和CORBA的集成解决方案
- soap RMI RPC WebService REST CORBA JMS这几者的区别和联系
- soap RMI RPC WebService REST CORBA JMS这几者的区别和联系?
- java.rmi.Naming和java.rmi.registry.LocateRegistry的区别
- java.rmi.Naming和java.rmi.registry.LocateRegistry的区别
- 用RMI和CORBA开发JAVA分布式程序
- 用RMI和CORBA开发JAVA分布式程序(二)
- 使用RMI和CORBA进行分布式java程序设计
- 使用RMI和CORBA进行分布式java程序设计
- 用RMI和CORBA进行分布式Java编程
- 用RMI和CORBA开发JAVA分布式程序
- 用RMI和CORBA开发JAVA分布式程序(二)
- 用RMI和CORBA开发JAVA分布式程序(二)
- 用RMI和CORBA开发JAVA分布式程序
- 用RMI和CORBA进行分布式Java编程
- 多线程编程
- Loading_DLL_from_Memory
- 多线程Ping的解决
- Delphi 6, 7 threads synchronization in ActiveX controls
- 关于多线程使用的问题
- java中rmi和corba的区别
- 2005年8月30日 二
- 用VC++开发一个简易的播放器(二)
- 最棒的玉米_最棒的你
- 世界上什么样的菜放多少盐也不咸
- .net注册到IIS命令
- Python quopriMIME.py中的一个问题
- 南澳.西冲-东冲穿越之旅
- Java NIO原理和使用