




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
复习提纲 考试题型:一、填空题(本大题共 小题,共30空,每空1分,总计30分)二、问答题(本大题共4小题,每小题5 分,总计20分)三、编程题(本大题共1小题,每小题50分,总计50分)1、开放系统公认的“必具特征”。2、开放系统技术在信息技术领域已经得到了广泛应用,一个开放系统可以用其“轮廓(ProfiIe)”来勾划,轮廓由七个成分所组成。3、CORBA ORB的优点:4、国外学术界明确地给出了中间件的定义,并画出中间件的定义图。5、作为一个中间件,它应该具有两个部分。6、中间件对于应用之间的协同工作的真正贡献,并画出中间件的层次结构图。7、传统上认为中间件可以分为三类。8、从应用程序来说,利用中间件可以获得的优点。9、RMI体系结构由三层组成。10、在RMI体系中,一个远程对象客户端的桩要负责处理多项任务:11、ORB的最重要的特征是,提供了客户与目标对象之间的交互透明性。具体地说,它主要屏蔽了哪些内容?12、编写一个基本的DCE应用,应用开发者应当提供三个文件:(界面定义文件)、(客户程序)、(服务器程序)。13、作为一个中间件DCE提供着两类服务:基本服务和扩充性服务。基本服务包括哪些?扩充性服务包括哪些?。14、DCE对于安全涉及4个方面。15、在国际标准化组织ISO/IEC和ITU的共同努力下,于1995年发布出了开放式分布处理参考模型RM-ODP,ODP的功能有哪些?。 16、RM-ODP标准把对ODP系统的说明细化为五个观点。17、作为交互的前提,计算界面之间的绑定是至关重要的,计算语言定义了三种绑定方式。I18、COM技术经历了哪5个阶段的演变,每个阶段都代表了COM的一个应用层次和应用领域。19、在COM技术中,核心概念是哪两个。20、为了保证多个开发商之间的基于CORBA的EJB产品之间的互操作性,规范定义了EJB到CORBA的映射,分为四个部分。21、DCOM是分布式应用环境中的COM技术, DCOM的整体结构图。22、COM+技术是Windows DNA框架中的中间层技术,它扩展并增加了哪些企业应用功能?23、EJB的主要组成部分。24、EJB中的bean可以分为几种?25、会话bean可进一步分为两种。26、为了开发一个由两个可执行部分(一个是客户机,另一个是服务)所组成的C+ CORBA应用程序。通常需要执行以下几个步骤: (1)确定府用程序的对象,定义它们在IDL中的接口。 (2)将IDL定义编译成c+的存根和框架。 (3)声明和实现能具体化CORBA对象的c+伺服类。 (4)编写一个服务器main程序。 (5)将所创建的在服务器上可以执行的存根和框架,编译和连接成服务器实现文件。 (6)与生成的存根一起编写、编译和连接客户机程序代码。27、通过C+编写一段CORBA小程序(教材第五章的例子)28、通过java编写一个CORBA小例子。1)首先要熟悉idlj 语言,这个是专门进行接口设计的语言,它与java没关系,有自己的语法,具体的规则需要大家自己再网上研究,这里不多说了module HelloApp interface Hello string sayHello(); oneway void shutdown(); ;这里定义了一个简单的interface, 将其保存为hello.idl, 然后再dos命令框里面输入 idlj.exe -fall hello.idl 编译。之后会出现一个叫做HelloApp的目录,corba就是通过这个目录里面的类来进行c-s之间的数据沟通。2)下一步,就是我们的server端:/ A server for the Hello objectimport HelloApp.*;import org.omg.CosNaming.*;import org.omg.CosNaming.NamingContextPackage.*;import org.omg.CORBA.*;import org.omg.PortableServer.*;import org.omg.PortableServer.POA;import java.util.Properties;public class HelloServer public static void main(String args) try / create and initialize the ORB ORB orb = ORB.init(args, null); / get reference to rootpoa & activate the POAManager POA rootpoa = (POA)orb.resolve_initial_references(RootPOA); rootpoa.the_POAManager().activate(); / create servant and register it with the ORB HelloImpl helloImpl = new HelloImpl(); helloImpl.setORB(orb); / get object reference from the servant org.omg.CORBA.Object ref = rootpoa.servant_to_reference(helloImpl); / and cast the reference to a CORBA reference Hello href = HelloHelper.narrow(ref); / get the root naming context / NameService invokes the transient name service org.omg.CORBA.Object objRef = orb.resolve_initial_references(NameService); / Use NamingContextExt, which is part of the / Interoperable Naming Service (INS) specification. NamingContextExt ncRef = NamingContextExtHelper.narrow(objRef); / bind the Object Reference in Naming String name = Hello1; NameComponent path = ncRef.to_name( name ); ncRef.rebind(path, href); System.out.println (HelloServer ready and waiting .); / wait for invocations from clients orb.run(); catch (Exception e) System.err.println(ERROR: + e); e.printStackTrace(System.out); System.out.println(HelloServer Exiting .); /end main / end class将其保存为HelloServer.java.放在刚才的hello.idl的目录。编译这个文件就不多说了。3)还记得在hello中定义的interface吗?我们需要对自己定义的接口中的方法进行实现,因此HelloImp.java/ The servant - object implementation - for the Hello/ example. Note that this is a subclass of HelloPOA, whose/ source file is generated from the compilation of/ Hello.idl using j2idl.import HelloApp.*;import org.omg.CosNaming.*;import org.omg.CosNaming.NamingContextPackage.*;import org.omg.CORBA.*;import org.omg.PortableServer.*;import org.omg.PortableServer.POA;import java.util.Properties;class HelloImpl extends HelloPOA /必须继承这个类,在helloApp目录中已自动生成 private ORB orb; public void setORB(ORB orb_val) orb = orb_val; / implement sayHello() method public String sayHello() return nHello world !n; / implement shutdown() method public void shutdown() orb.shutdown(false); /end class同样放在server所在目录中。4)接下来是客户端(HelloClient.java):/ A sample Java IDL object client application.import HelloApp.*;import org.omg.CosNaming.*;import org.omg.CosNaming.NamingContextPackage.*;import org.omg.CORBA.*;public class HelloClient static Hello helloImpl; String x=new String6; public static void main(String args) try / create and initialize the ORB ORB orb = ORB.init(args, null); System.out.println(ORB initialisedn); / get the root naming context org.omg.CORBA.Object objRef = orb.resolve_initial_references(NameService); / Use NamingContextExt instead of NamingContext, / part of the Interoperable naming Service. NamingContextExt ncRef = NamingContextExtHelper.narrow(objRef); / resolve the Object Reference in Naming String name = Hello1; helloImpl = HelloHelper.narrow(ncRef.resolve_str(name); System.out.println (Obtained a handle on server object: + helloImpl); System.out.println(helloImpl.sayHello(); helloImpl.shutdown(); catch (Exception e) System.out.println(ERROR : + e) ; e.printStackTrace(System.out); /end main / end class这个文件最好放在一个新建的目录,已表示和server有区别,放在一起也没有关系。如果分开的话,记着把HelloApp这个目录复制到
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电饭煲使用规定
- 心理调适方案
- 2025重庆市万州区大周镇人民政府招聘非全日制公益性岗位1人笔试备考题库及答案解析
- 2025中国工商银行山西省分行社会招聘120人考试含答案
- 农业机械设备维修与保养
- 2025浙江宁波江北区劳动和社会保障事务代理服务有限公司招聘编外工作人员录用人员笔试历年参考题库附带答案详解
- 煤矛石矿山地质环境公示规定
- 时尚配饰搭配技巧分享手册
- 心理辅导与情绪调节探索
- 2025锡林浩特招聘5名基层医疗卫生机构专业技术人员笔试含答案
- 电商平台知识产权保护与维权服务合同
- DB14∕T 712-2018 高速公路施工驻地、场站、工地试验室建设指南
- 急性上呼吸道感染及其护理
- 2024年食品安全抽检监测技能大比武理论考试题库(含答案)
- 人力入股机制合同协议书
- DL∕T 516-2017 电力调度自动化运行管理规程
- 工程项目决算书
- 工资变更协议书范本
- 大型设备拆装方案
- 2024年海南财金银河私募基金管理有限公司招聘笔试参考题库附带答案详解
- 企业可持续发展管理制度
评论
0/150
提交评论