Sun EJB(Enterprise Java Bean)技术是在Java Bean本地构件基础上发展的面向服务器端分布应用构件技术。它基于Java语言,提供了基于Java二进制字节代码的重用方式。EJB给出了系统的服务器端分布构件规范,这包括了构件、构件容器的接口规范以及构件打包、构件配置等的标准规范内容。EJB技术的推出,使得用Java基于构件方法开发服务器端分布式应用成为可能。从企业应用多层结构的角度,EJB是业务逻辑层的中间件技术,与JavaBeans不同,它提供了事务处理的能力,自从三层结构提出以后,中间层也就是业务逻辑层,是处理事务的核心,从数据存储层分离,取代了存储层的大部分地位。本文来自优.文~论^文·网原文请找腾讯324'9114
EJB模型包括服务器端、容器、接口(home接口和remote接口)以及资源管理器(如数据库)四个部分。
论文网http://www.youerw.com/ 从本质上来看,EJB模型就是一个客户/服务器/资源管理器三层结构
3 COM/DCOM构件模型简述
3.1 COM/DCOM组件对象模型
Components Object Model (COM) 是面向对象的组件模型,是软件组件互相通讯的一种方式。它是一种二进制和网络标准,允许任意两个组件互相通讯,而不管它们是在什么计算机上运行(只要计算机是相连的),不管各计算机运行的是什么操作系统(只要该系统支持 COM),也不管该组件是用什么语言编写的。COM对象以接口的方式提供服务,一个组件可以包含多个COM对象,并且每个COM对象可以实现多个接口,当组件的客户程序调用组件功能时,它首先创建一个COM对象或者通过其他途径获得COM对象,然后通过该对象所实现的COM接口调用它所提供的服务。当所有的服务结束后,如果客户程序不再需要该COM对象,那么它应该释放对象所占有的资源,包括对象自身。
3.2 COM的对象、种类
COM对象是指符合COM规范的CoClass构件类(继承于定义的接口)的实例。它包括属性(即状态)和方法(即操作),状态反映对象的存在,方法就是接口。和COM的接口一样,对象也有一个GUID标识,即CLSID(CoClassID).
COM构件是指以DLL或EXE形式存在的提供一组特定功能的COM对象。构件独立于具体的编程语言,以二进制形式发布,可以独立升级;构件位置透明地在网络上运行,屏蔽复杂的网络编程,满足软件构件“即插即用”的要求。
3.3 COM的数据类型
组件API及接口指针中,除了IUnknown::AddRef()和IUnknown::Release()两个函数外,其它所有的函数,都以 HRESULT 作为返回值。COM 组件是运行在分布式环境中的,就有可能出现服务器关机、网络掉线、运行超时、对方不在服务区等异常,应该返回一个值------函数是否被正常执行了。HRESULT 其实是一个双字节的值,其最高位(bit)如果是0表示成功,1表示错误。
为了把全世界人民所有的所有的文字符号都统一进行编码,于是制定了UNICODE标准字符集。UNICODE 使用2个字节表示一个字符(unsigned shor int、WCHAR、_wchar_t、OLECHAR)。
COM 设计者引入了 BASIC 中字符串类型的表示方式---BSTR。BSTR 其实是一个指向 UNICODE 字符串的指针类型,且 BSTR 向前的4个字节中,使用DWORD保存着这个字符串的字节长度( 没有含字符串的结束符)。
VARIANT 数据类型就具有跨语言的特性,同时它可以表示(存储)任意类型的数据。从C语言的角度来讲,VARIANT 其实是一个结构,结构中用一个域(vt)表示------该变量到底表示的是什么类型数据,同时真正的数据则存贮在 union 空间中。
3.4 COM的接口
组件之间的接口是组件软件的关键,因为接口双方进行通信的基础。
COM规范的核心内容是关于接口的定义,虽然COM本身并不复杂,但是围绕COM接口有很多内容值得仔细探讨,包括接口的标识、接口函数的调用习惯、参数处理、接口与对象的关系以及接口与C/C++的关系、COM接口多具有的特性等。
COM定义了一套完整的接口规范,不仅可以弥补API作为组件接口的不足,还从分发挥了组件对象的优势,并实现了组件对象的多态性。本文来自优.文~论^文·网原文请找腾讯3249~114
COM对象必须实现Iunknown接口,这个接口是管理COM对象生命周期的,当COM对象不使用的时候,是这个接口定义的方法负责释放内存。一个COM对象可以没有任何别的接口,但是这个必须要,它是默认实现的接口。
上一页 [1] [2] [3] [4] [5] [6] [7] [8] 下一页
VC++的COM/DCOM的旅游资源信息分析软件构件开发+UML建模 第4页下载如图片无法显示或论文不完整,请联系qq752018766