logo资料库

组件+COM+CORBA+EJB.docx

第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
资料共3页,全文预览结束
一、组件技术 1、组件:是一种大粒度的可复用的元素,属于结果复用,运行时的组件称为组件实例, 与设计时的组件进行区分。 2、软件体系结构(架构)-从复用角度看,属于过程复用 3、组件的作用:  支持动态链接(组件最基本的性质)、  支持分布式软件开发、  OOL 中基本的封装机制”类”不足以支持复杂软件系统的构造,需要更大粒度的 软件构成成分:组件  支持一种开发的历年 二、组件对象模型 1、 COM 规范的主要目标:支持动态链接和支持向前兼容,其他目标暂不记住 2、 COM 规范的主要内容:、 规范可以理解为编程约束或建议,一个程序的程序整体结构应该是什么样子的约束 或建议,程序的结构分为接口部分和实现部分 A、接口部分:每个 COM 组件具有若干个接口,每个接口相当于当前组件对外 的某一方面的承诺或窗口,每个接口包括一组函数,这些函数共同代表了 当前组件具有的某一方面你的能力,一个接口相当于一个数组,每个元素 是一个指向函数的指针,这种形式类似于 C++实现束定时所采用的虚函数 表的结构。 B、 实现部分:实现部分需要实现接口部分的每一个接口里的每一个函数,但 是不约束如何实现的,怎么实现都可以,相当于 private。 结合 COM 组件的两方面结构上看,COM 规范只做用于接口部分,不作用于实 现部分。 3、 Com 组件中的 IUnknown 接口:参考背诵内容 3.0 三、类之间关系的实现 1、 依赖关系:------> 2、 继承关系: 3、 聚合关系: :举例:汽车类聚合发动机类、车轮类等 4、 组合关系: 更强的聚合关系,组合的各个部分生命周期同步 5、 关联关系: ,关联关系指的是被知道或被使用,但是语义相较于聚合 和组合没有那么强烈,只有关联关系中关系的方向和多重性质分为单/双向,单/ 多个。双向关联是一条不带箭头的实线,如男人和女人当存在 1..1 关系时(夫妻)
四、CORBA-公共对象请求代理体系结构 1、 CORBA 是一种规范,它是一种典型的软件体系结构。 2、 该规范下的软件结构:可以简单理解为一种开放式的总线结构 A、总线:对象请求代理(ORB) B、 充当插件(组件)角色的组件又称为:CORBA 对象、CORBA 服务 3、 ORB 是一种中间件,他是一个软件,它是连接对象、应用程序、CORBA 服务和 CORBA 工具集的核心,它将 各个元素分开,是 CORBA 实现分不是软件集成、即插即用的 核心。 4、 插件之间不直接相连,之间的协作、互操作关系通过 ORB 完成 5、 CORBA 规范的主要目标:分布式软件系统中,可以利用面向对象方法,包括对象 之间完成远程调用,并且,从开发人员的角度,不必关心对象间远程调用的问题, 可有类似于编写单机本地程序一样,编写分布式软件的程序。 6、 代理模式中的远程代理:为位于不同进程空间的远程目标对象提供进程内的代表对 象,典型示例:客户端程序代理服务端的服务。 五、EJB-组件与中间件相结合的一种技术 1、 若干组间+中间件=软件系统(宏观背景) A、领域相关的功能由组件负责 B、 领域无关的功能由中间件负责 它是软件系统分解、构造的一种方式 2、 一些领域无关的功能举例 远程调用 负载均衡、资源调度 数据在线备份、冗余存储 缓冲存储、资源池 透明容错 事务处理 日志和评审 消息管理 访问控制(安全性) 数据永久性存储 对象生命周期的维护 完全关机 动态重新部署 软件的动态演化 ……… 类似的这些功能,应该单独完成,并在不同的软件系统中重复使用。 3、 EJB 组件的种类:三种 A、实体 Bean:以对象的形式管理持久化数据,或者可以理解为:数据库中的数据 在内存中的一种表示方式 B、 会话 Bean:代表业务流程或业务功能,分为有状态和无状态。缺省情况下指的 是有状态会话 Bean C、消息驱动 Bean:基于 JMS,支持异步消息
4、 构造一个 EJB 组件的基本流程: a、 定义组件业务接口(EJBObject 接口) b、 定义 home 接口 c、 定义并实现 Bean 类,实现一个接口并另外两个接口相关,涉及到的三个接口是 组件种类接口、组件业务接口、home 接口 d、 生成 EJB 部署描述文件 e、 按照一定的格式,将 bean 类、接口和部署描述文件放入 EJB-JAR 文件中,得到 的这个文件就是 EJB 组件,一个 EJB_JAR 中可能有多个 EJB 组件 5、 部署描述文件的作用 A、告诉 EJB 容器自己是什么,什么是组件业务接口、什么是 home 接口、什么是 Bean 类,功能有哪些 B、 向 EJB 容器申请所需要的服务,以及以何种形式提供服务 C、定义若干量值 6、 EJB 组件和 EJB 容器的关系,单独使用均不完整,EJB 组件对外提供服务的时候需要 EJB 容器进行补充。
分享到:
收藏