




已阅读5页,还剩47页未读, 继续免费阅读
(计算机应用技术专业论文)基于syncml的移动设备数据同步技术的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于s y n c l 儿的移动设备数据同步技术的研究 摘要 在油田勘探、开发生产过程中,移动环境下的生产数据传输频繁、传输数据量大,数据处理复 杂度高但是各生产单位地理位置偏远、环境复杂,所采用的通信设备种类繁多、网络条件多样复 杂、传输的数据类型结构不同、传输系统可靠性低等,所有这些因素都会影响到勘探、开发生产数 据简单、安全、高效的传送给油田生产用户进行相应的使用与处理 因此。为了解决上述问题对油田各生产单位及研究部门在数据使用、数据共享、项目研究等方 面所带来的不利影响,本文首先对s y n c m l ( s y n c r o n i z a t i o nm a r k u pl a n g u a g e ) 、j 2 m e 、j 2 e e 等技术 进行了深入的研究,并结合中石油大型信息化建设项目- a l ,a 2 ( a i 地球科学与钻井系统、a 2 上 游生产信息系统) 的理论与实践成果,提出了有价值的数据同步系统架构及其相适应的基于s y n c m l 、 j 2 m e 及j 2 e e 的数据同步系统模型。通过对该模型基于j 2 m e 的客户端组件结构、基于j 2 e e 的服务器 端组件结构及二者之间的数据同步实现机制进行深入的研究与讨论,设计了移动设备数据同步原型 系统。并对该原型系统进行了简单的应用实现。实现结果证明该系统模型实现了移动设备与服务器 数据源的有效数据同步,是可行的。 关键词:数据同步;s y n e m l , j 2 m e :j 2 e e ;数据弱步系统模型 n r e s e a r c ho nd a t as y n c h r o n i z a t i o nt e c h n o l o g yo f m o b i l ee q u i p m e n tb a s e do ns y n c m l a b s t r a e t i no i l f i e l de x p l o r a t i o na n dd e v e l o p m e n tp r o d u c t i o np r o c e s s t r a n s m i s s i o no fp r o d u c t i o nd a t ai sm o l t f r e q u e n tt h a nb e f o r ei nm o b i l ec o m m u n i c a t i o ne n v i r o n m e n t , q u a n t i t yo ft h a ti sm o r ea n dm o r el a r g e ,a n d p r o c e s s i n gc o m p l e x i t yo ft h a ti sm o r ea n dm o r eh i g h h o w e v e r , t h er e m o t el o c a t i o no fp r o d u c t i o nu n i t s c o m p l i c a t e de n v i r o n m a n t s aw i d e 枷g eo fc o m m u n i c a t i o n se q u i p m e n t , d i v e r s ea n dc o m p l e xn e t w o r k c o n d i t i o n s ,t h ed i f f e r e n ts t r u c t u r eo fd a t at y p ea n dl o wr e l i a b i l i t yo ft r a n s m i s s i o ns y s t e m a l lt h e s ef a c t o r s w i l la f f e c tp r o d u c t i o nd a t ao fe x p l o r a t i o na n dd e v e l o p m e n tt r a n s m i t t e dt ot h eo i l f i e l dp r o d u c t i o nr i s e r si n w a yo f s i m p l e ,s a f e t ya n dh i g he f f i c i e n c yt ou s ea n dh a n d l ea c c o r d i n g l y 1 1 1 e r e f o r e i no r d e rt os o l v et h ea b o v ep r o b l e m sh a v eb r o u g h ta d v e r s ee f f e c t st oo i i f i e l dp r o d u c t i o n u n i t sa n dr e s e a r c hd e p a r t m e n t si nt h eu s eo fd a t a , d a t as h a r i n ga n dl l s e a r c ho np r o j e c t s f i r s t l y , t h i sp a p e r s t u d i e ss y n c m l ( m a r k o pl a n g u a g es y n c h r o n i z a t i o n ) ,j 2 m ea n dj 2 e et e c h n o l o g yi n - d e p t ha n dc o m b i n e s t h et h e o r ya n dp r a c t i c er e s u l t sc o m i n gf r o ml a r g e - s c a l ei n f o r m a t i o nt e c h n o l o g yp r o j e e t s - a 1 ,a 2 ( a l e a r t h s c i e n c ea n dw b d r i l l i n gs y s t e m a 2 一u p s t r e a mp r o d u c t i o ni n f o r m a t i o ns y s t e m ) o fp e t r o l e u mc h i n a s e c o n d l y , av a l u a b l ed a t as y n c h r o n i z a t i o ns y s t e r nf 1 1 m l e w o r ka n di t sd a t as y n c h r o n i z a t i o nm o d eh a s e do n t h es y n c m l ,j 2 m ea n dj 2 e ea r ep r o p o s e d t h i r d l y , t h es t r u c t u r eo fj 2 m e - b a s e dc l i e n tc o m p o n e n t sa n d j 2 e e - b a s e ds e r v e rc o r n p o n o n t sa n dd a t as y n c h r o n i z a t i o nm e c h a n i s m so f t h e ma r cs t u d i 酣a n dd i s c u s s e di n d e p t h l a s t l y , m o b i l ee q u i p m e n td a t as y n c h r o n i z a t i o np r o t o t y p es y s t e mi sd e s i g n e da n di t sa p p l i c a t i o ni s a c h i e v e d t h er e s u i t ss h o wt h a ts i m p l ed a t as y n c h r o n i z a t i o ni sr e a l i z e db e t w e o nam o b i l ed e v i c ea n da s e ! n v - e rd a t as o u r c ei ne f f e c ta n dt h i sm o d e l i sf e a s i b l e k e yw o r d sd a t as y n c h r o n i z a t i o n :s y n c m l :j 2 m e :j 2 e e :d a t as y n c h r o n i z a t i o ns y s t e mm o d e l n l 学位论文独创性声明 本人所呈交的学位论文是我在指导教师的指导下进行的研究工作及取得的研究成 果据我所知,除文中已经注明引用的内容外,本论文不包含其他个人已经发表或撰写 过的研究成果对本文的研究做出重要贡献的个人和集体,均已在文中作了明确说明并 表示谢意 作者签名: 坛以匕 学位论文使用授权声明 日期:巫时i 川 本人完全了解大庆石油学院有关保留使用学位论文的规定,学校有权保留学位论 文并向国家主管部门或其指定机构送交论文的电子版和纸质版有权将学位论文用于非 赢利目的的少量复制并允许论文进入学校图书馆被查阅有权将学位论文的内容编入有 关数据库进行检索有权将学位论文的标题和摘要汇编出版保密的学位论文在解密后 适用本规定 学位论文作者张童鹾也导师馘孙 日期:加。殍2 日日期:矿口7 雾j 目陟妇 创新点摘要 1 数据同步系统总体架构 针对移动环境下,油田生产数据传输中遇到的一些实际问题,在对数据同步的 相关技术进行了研究之后,并结合中石油大型信息化建设项目“a i a 2 ”( a 卜地球科 学与钻井系统,a 2 一上游生产信息系统) 的理论与实践成果,提出了一个移动环境下 的数据同步系统总体架构的设计思想。 2 数据同步系统模型的设计 基于提出的移动设备数据同步系统总体架构的设计思想,提出了一个简单的数 据同步系统模型,并进行了应用实现,结果表明该模型是可行的。 i v 大庆石油学院硕士研究生学位论文 引言 移动通信技术和计算机技术的进步,使用户可以随时随地进行信息的接收和发送, 而这种数据交互的结果需要存储到手持或移动设备中,也需要与其他数据设备中这种类 型的数据保持一致,这就是一种数据同步。但是目前在数据同步领域还有两种方式没有 实现,一是支持任何移动设备同步的网络数据类型,二是支持任何类型数据的移动设备。 这样的直接后果是目前存在的大量的互不兼容的数据同步协议,并且只是支持部分移动 终端和部分数据类型。单一同步标准的缺乏为最终用户、设备制造商、应用程序开发者 和设备提供商制造了很多问题。因此,在数据同步领域急需这样一种能够支持各种数据 类型和多种终端设备通用的同步协议的情况下,s y n c m l t 1 应运而生。s y n c m l j m 用同步 协议的目标是普遍适用,同步两端可以是任何一种类型网络设备、在任何一种网络上面, 同步操作的数据可以是任何一种网络数据。任一种移动设备包括掌上电脑、p d a 、移动 电话、笔记本电脑等。同时,一个用户可以通过不同的设备访问、操作同样的数据集合, 同步的两端可以使用任意类型的数据类型。实现这些目标,s y n c m l ) 蘧用同步协议具有 下列特性: ( 1 ) 能够高效的在有线和无线网络上传输: ( 2 ) 支持多种传输协议; ( 3 ) 支持任意的网络数据; ( 4 ) 可由多种应用程序访问: ( 5 ) 充分考虑到移动设备的资源限制; ( 6 ) 构造于现有的互联网和w e b 技术基础之上: ( 7 ) 协议最小功能就是赋予所有设备最常用的同步能力。 在s y n c m l 协议规范制定之后,便有了一座在移动通信设备和服务提供端之间进行 数据同步操作的桥梁。它使得在移动客户端与服务器端的不同开发平台之间,对不同类 型的数据信息以更加简单、方便的形式进行同步操作成为可能。 正是在这种背景下,并在大庆市移动业务增值服务信息平台研究项目的资助下, 本文深入研究了基于j 2 m e l 2 1 、j 2 e e t 3 的数据同步开发技术,提出了基于s y n c m l 、j 2 m e 及j 2 e e 技术来构建数据同步系统架构的思想,并针对该思想进行验证以满足油田勘探、 开发生产领域对移动设备数据同步技术开发的应用需要。 第1 章数据同步的相关技术概述 第1 章数据同步的相关技术概述 依据移动业务增值服务信息平台研究项目需要,本文研究的移动设备数据同步 关键技术涉及到s y n c m l l 4 ) 技术、j 2 m e 技术和j 2 e e 技术三项,它们的体系结构研究是 该同步系统的主要内容。 1 1s y n e m l 体系结构 s y n e m l ( s y n c h r o n i z a t i o nm a r k u pl a n g u a g e ,同步标记语言) 是个新的数据同步通 用标准,它由i b m ,l o t u s ,m o t o r o l a ,n o k i a ,p a l mi n e ,p s i o n ,s t a r f i s hs o r w 孤e 等商 家组织发起成立数据同步论坛组织s y n e m l 发起组制定的,该协议将会发展成为一个可 以被用户广泛接受的工业界通用的同步协议。自2 0 0 0 年1 2 月s y n c m l i 妒l 发布以来, 已经有近7 0 0 家全球的公司宣布支持该协议。 s y n c m l 协议基于x m l 【6 语言。s y n e m l 消息是以x m l 文档形式表示的,在各种 网络上传播的s y n c m l 包和消息被注册成两种m i m e t 刀( m u l t i p u r p o s ei n t e r n e tm a i l e x t e n s i o n ,多用途网际邮件扩充协议) 媒体类型,一种是a p p l i c a t i o n v n d s y n c m l + x m l 类 型,用来鉴别基于纯文本的s y n e m l 消息;另一种是a p p l i e a t i o n v n d s y n e m l + w b x m l 用来 鉴别基于w b x m l t s i - 进制表示的s y n e m l 消息 s y n c m l 是一套协议集,它主要包括4 个部分:s y n c m l 数据同步协议的框架结构、 s y n c m l 同步协议、s y n e m l 表示协议、s y n c m l 的传输方式。s y n c m l 同步协议主要定 义数据同步操作会话过程中的数据流程、同步双方的握手过程、数据同步操作的类型等; s y n c m l 表示协议主要涉及同步所支持的数据类型、命令格式、能够在各种网络传输的 s y n e m l 消息格式;s y n c m l 消息可以在任何一种有线和无线的网络连接上传输,在 s y n c m l 协议的传输绑定中定义了可以在基于m 1 甲,w s p t 9 1 ( w i r e l e s ss e s s i o n p r o t o c o l , 无线会话协议) ,o b e x t l 0 i ( i r d a o b j e c t e x c h a n g e p r o t o c o l ,对象交换协议) - - 种协议的网 络连接上传输s y n c m l 包和消息,这三种传输协议基本上含盖了所有的远程和短程连接。 1 1 1s y n c m l 框架结构 s y n c m l _ 框架如图l - i 所示。在这个图中,虚线框内部表示的是s y m l 标准讨论的 s y n c m i a 构,虚线框外部是数据同步协议。s y n c m l 框架由s y n c m l 数据格式、 s y n c m l 适配器和s y n c m l 功能接口三部分组成 2 大庆石油学院硕士研究生学位论文 图1 1s y n c m l 框架结构 图1 - l 中“应用a ”代表一个网络服务,可以与“应用b ”进行数据同步交互“应 用a ”和“应用b ”之间的数据同步操作服务可以利用王f n p 协议、w s p 协议、o b e x 协 议等公用网络连接。 “同步引擎”负责管理整个同步数据的操作。“应用a ”的数据同步操作基于数据 同步协议,由“同步引擎”负责管理整个操作过程。 。同步服务器代理”管理“同步引擎”对网络的访问,管理客户端和服务器端的应 用进行数据同步的相互通信过程。 “同步服务器代理”通过调用“s y n c m l 接口”或在此接口上的函数完成这些功能。 。s y n c m l 接口”是面向“s y n c m l 适l e 器”的应用程序接口( a p i ) ,“s y n c m l 适配 器”负责消息的收发过程,在这个过程中收发双方相互通信,收发s y n c m l 格式文档。 “s y n c m l 适配器”,同时负责创建和维护“应用a ”和“应用b ”之间的网络连接。 通过调用“s y n c m l 接口”的函数,“应用b ”用一个“同步客户端代理”访问网络和它 的“s y n c m l 适配器”。 1 1 2 s y n c m l 同步协议 在s y n c m l 同步协议中定义了在s y n c m l 客户端和s y n c m l 服务器端之间消息的交互 过程,同时定义的数据同步类型包括双向同步,客户端发起单向同步,服务器端发起单 向同步,服务器端通告同步等。在图1 2 中举例说明t s y n c m l 客户端和服务器端同步时 消息交互情况。s y n c m l 客户端发送包含客户数据修改信息的s y n c m l 消息给s y n c m l 服 务器,服务器根据s y n c m l 消息中的数据同步服务器中存储的数据,把修改结果信息回 应给s y n c m l 客户端。 第1 章数据同步的相关技术概述 图1 2 客户端与服务器端同步 图1 - 2 中两个设备所担当的角色: ( 1 ) s y n c m l 客户端:指包含了同步客户代理并首先把其修改信息发给服务器的设 备,而且客户端必须能接收来自s y n c m l 服务器端的应答消息。一般总是s y n c m l 客户端 先发送修改信息,但在某种情况下,服务器端也能发起同步过程。s y n c m l 客户通常可 以是手机、p c 或p d a 设备。 ( 2 ) s y a c 加l 服务器:指包含了同步服务代理和同步引擎的设备,通常要等待s y n c m l 客户端发起同步过程并把客户修改信息发送到服务器端。服务器端负责接收客户端的修 改信息并进行同步分析。如果在传输层支持服务器端的命令,s y n c m l 服务器端也可以 主动发起同步过程。一般服务器设备或p c 都可以成为s y n c m l 服务器。 1 1 3s y n c m l 表示协议 s y n c m l 表示协议定义了用于数据同步操作中实体之间传递的消息的格式,该协议 定义了一个x m l 的文档类型描述( d o c u m e n t t y p e d e s c r i p t i o n ,d t d i n l ) ,在此d t d 中定 义所有的在数据同步操作中所需数据的表示方式,s y n c m l 消息必须符合d t d 说明,以 便在客户端和服务器端进行增、删、改操作信息和结果状态信息的交互。同时在协议中 定义了设备性能信息( 如存储能力) 和各种元信息( 如安全认证信息的) 的描述方法。 从概念上讲,s y n c m l 表示协议定义的s y n c m l 包的基本结构( 见图1 - 3 ) 是各种同步消 息的容器,s y n c m l 消息不仅是一个单独的m i m e 实体,也是一个格式良好的x m l 文档。 一个s y n c m l 包可以包含一个或者多个格式完整的s y m m l 消息,用于客户端和服务器端 的数据同步操作。对于一个s y n c m l 消息则可以包含一个或者多个同步命令,s y n c m l 同 步消息由以下两部分组成; 4 图l - 3s y n c m l 包和消息结构 大庆石油学院硕士研究生学位论文 ( 1 ) 消息头:在s y n e m l 消息头中含有消息的路由信息、版本信息、认证信息、会 话信息等,s y n c m l 消息头i 由s y n c h d r 元素说明。 ( 2 ) 消息体:在s y n e m l 消息体包含一个或者多个跚弧;m l 命令,也包含需要同步的 数据项,s y n c m l 消息体由s y n c b o d y 元素说明。每个s y n e m l u 6 a 令由单个s y n e m l 元素 类型说明,可以包含多个元素类型以说明s y n c m l f f r 令的执行细节,这些细节信息包括 需要同步的数据、元信息等。s y n e m l 命令可以分成消息请求命令和响应消息命令,其 中消息请求命令包括:a d d ,a l e r t ,a t o m i c ,c o p y ,d e l e t e ,e x e c ,g e t ,m a p ,p u t , r e l e a s e ,s e a r c h ,s e q u e n c e ,s y n e ;响应消息命令包括:s t a t u s ,r e s u l t 。其中有些命令 可以包含另外一些命令,有些命令可以在s y n c e d 令里面也可以在其外面。 s y n e m l 支持一套以不同媒体类型区别的数据格式用来进行信息交换,这些数据格 式在s y n c m l 规范中是强制性的s y n e m l _ 觯t 息内部也是使用 m e 媒体类型鉴别这些数 据格式,并且支持任何一种注册的m i m e 媒体类型。s y n c m l 与数据格式和网络传输是独 立的,这样使得s y n e m l 能够支持各种数据格式,如v c a r d ( 名片信息) ,v c a l e n d a r ( 日历 信息,记事信息) 等,而成为个开放的标准,同时s y n e m l 也支持各种根据需要自定义 数据格式。 1 1 4s y n e m l 传输绑定 一个通用的数据同步协议可以将在各种网络上的任何一种设备连接起来进行同步 操作,为达到这样一个目标,s y n e m l 必, 须能够满足无线通信的特定链路要求,因为无 线网络的特点是网络传输延迟高,带宽有限,数据传输的成本高等。 s y a e m l 能够充分利用网络资源,例如:完成一次数据同步只需传输6 个包,利用这 种优化可以大大减少“r e q u e s t r e s p o n s e ”交互的数据传输量,这对于在空中无线网络进 行数据同步操作是非常重要的。为了能够适应有限带宽资源,s y n e m l 利用无线二进制 编码( w a pb i n a r yx m l ,w b x m l ) ,使每个包传输的数据量尽可能的小,因为这种二进 制编码能减少数据的存储量,也能减少处理这些数据所需的资源。对s y n c m l :进行的这 些优化使得它对于高延迟的无线网络更具有顽健性。 传输绑定是指s y n e m l 规范定义i 拘s y n c m l 包的传输方式,即如何传输和交换请求消 息和响应消息。s y n e m l 规范中的同步协议和表示协议是独立于传输方式的,因此 s y 眦m l 消息能够基于任何一种网络数据协议传输,s y n e m l 规定的传输绑定协议有 m 耶,w s p ,o b e x _ 三种。同时s y n e m l 也能够基于b m a i l 的标准传输协, s ( ( s m t p ,s i m p l e m a i lt r a n s f e rp r o t o c o l :p o p 3 ,p o s to f f i c ep r o t o c o l ;i m a p ,i n t e r n e tm e s s a g ea c c e s sp r o t o c 0 1 ) 和其他一些网络传输协议。因为s y n c m l 消息是自包含的,从原理上讲s y n e m l 消息能够 基于任何一种传输方式,而服务器和客户端不必要知道网络的物理上的拓扑结构。 第l 章数据同步的相关技术概述 1 2j 2 m e 体系结构 j 2 m e 是s u n m i c r o s y s t e m s 公司提供的标准的小型j a v a 壶用的环境,主要是为嵌入式 产品提供易于开发、部署和使用的技术框架,它目前是嵌入式移动设备的最佳解决方案。 j 2 m e 平台是由配置( c o n f i g u r a t i o n s ) 和简表嗍( p r o f i l e s ) 构成的,见图l - 4 。配 置是提供给最大范围设备使用的最小类库集合,在配置中同时包含j a v a 虚拟机。简表是 针对一系列设备提供的开发包集合。在j 2 m e 中还有一个重要的概念是可选包( o p t i o n a l p a c k a g e s ) ,它是针对特定设备提供的类库,比如某些设备是支持“蓝牙( i 哪”的,针对 此功能j 2 m e 中制定 j j s r 8 2 t 1 5 1 ( b l u e t o o t ha p i ) ,提供了对“蓝牙”的支持。 互匦叵司 二玉堑 1 2 1j 2 m e 配置 匝亟垂垂圈 图1 4 j 2 m e 体系结构 j 2 m e 配置决定了使用的h 俨1 ( j a v a v i r t u a lm a c h i n e s ,j a v a 茬拟机) ,见图l - 4 。 配置将基本运行环境定义为一组核心类和一个运行在特定类型设备上的特定w m , j 2 m e 的两种配置类型是c l d c o n ( c o n n e c t e dl i m i t e dd e v i c ec o n f i g u r a t i o n ,有限连接设备 配置) 和c d c 1 8 l ( c o n n e c t e dd e v i c ec o n f i g u r a t i o n ,连接设备配置) ,每个配置为一组通 用设备提供最小的j a v a 平台。 作为第一个面对小型设备的j a v a 应用开发规范,c l d c 是由包括n o k i a ,m o t o r o l a 和 s i e m e n s 在内的1 8 家全球知名公司共同协商完成的。c l d c 是j 2 m e 核心配置中的一个, 可以支持一个或多个简表。其目标主要面向小型的、网络连接速度慢、能源有限( 主要 是电池供电有限) 且资源有限的设备,如手机、机顶盒、p d a 等。c l d c 允许向上述设 备动态的传递j a v a 立用和内容;使j a v a 开发人员能够轻松的在这些设备上进行应用开发。 c l d c 为上述设备开发的应用尽可能的不使用设备的本地系统软件( 做到与平台、设备 无关) ;定义能应用在绝大多数上述设备上的最小子集的规范;保证在不同类型上述设 备之间代码级的可移植性和互操作性。 c l d c 的核心是虚拟机和核心类库。虚拟机运行在目标操作系统之上,对下层的硬 件提供必要的兼容和支持;核心类库提供操作系统所需的最小的软件需求。c l d c 标准 为了能够涵盖尽可能多的设备,其类库只包含了最小的j a v a 平台特性和a p i 。面对严 格的内存限制和当前各种各样的小型设备,c l d c 不可能覆盖全部的这些设备。为了确 6 大庆石油学院硕士研究生学位论文 保与其他j a v a 平台的兼容性,绝大多数的c l d c 类库是从j 2 s e f 9 1 ( j a v a 2 标准版) 和 j 2 e e 中继承的,是j 2 s e 和j 2 e e 的子集。由于目标设备的特殊性,c l d c 类库在安全、 输入,输出、用户界面、网络和存储管理等方面没有全部使用j 2 s e 的实现,其中的部分 类库c l d c 进行了重写,如网络连接。 c l d c 的类库可以分为两种:一种是从j 2 s e 标准类库中继承的;另一种是专门为 c l d c 设计的( 这部分类也可以被映射至l j j 2 s e 中) 。 对于第一种c l d c 类库,包括了j 2 s e 的3 个最核心的甸a v a d o 、j a v a 1 a n g ;g l j a v a u t i l 。 而且这3 个包和j 2 s e 相比,也只是j 2 s e 相应包的一个很小的子集。例立j a v a u t i l 的类与接 口由j 2 s e 中的5 3 个减少到1 0 个。 对于后一种c l d c 类库,只有描述标准连接框架的j a v a x m i c r o e d i t i o n i o 包和m i d p 中 定义的包一起放于j a v a x m i c f o e d i t i o n 包中。 对于c d c ,则用于比p c 机小,但具有比5 1 2 k b 内存多的设备。这一类设备包括互联 网络电视系统、机顶盒、汽车导航以及娱乐系统。c d c 被定义为一种添加了c l d c 类的 j 2 s e 的简化版。因此,它是建立在c l d c 的基础之上,并且为c l d c 设备开发的应用程 序也可以运行在c d c 设备上。 本文的研究主要基于c l d c 体系结构。 1 2 2 2 m e 简表 j 2 m e 简表定义应用程序,它定义了受支持设备的类型,例如,移动信息设备简表 m i d p t 2 0 j ( m o b i l ei n f o r m a t i o nd e v i c ep r o f i l e ) 定义了蜂窝电话的类,它把一些特定于域的 类加入j 2 m e 配置中来定义对类似设备的使用。简表建立在配置的顶部,目前已经为j 2 m e 定义了两个简表:k j a v a l 2 1 i 和m i d p ,这两种简表适用于小型设备,它们都构建在c l d c 之上。i o a v a 是归s u b 公司所有的简表,它包含一个特定于s u n 的、运行在p a l m 操作系 统上的a p i ,由于它不是一个标准的j 2 m e 软件包,它的主软件包是c o r n s 珊k j a v a 。 j 2 h 也a p p d p c l d c k v m j 2 m 已a p p 删蹦 c l d c k v m j 2 n 匝a p p f u n d a t i o n c d c c v m j 2 s e a p p j 2 s e m 图1 ,5 虚拟机、配置和简表之间的关系 图1 5 描述了不同的虚拟机、配置和简表之间的关系,同时对j 2 s ea p i 和j a v a 虚 拟机分别进行了比较。j 2 s e 虚拟机通常被称为j v m ,j 2 m e 虚拟机k v m e z 2 1 和c v m 都是j v m 的子集。k v m 和c v m 均可被看作是一种j a v a 虚拟机,即j 2 s ei v m 的压缩 版,特定于j 2 m e 。 m i d p 是一个公共的、为移动设备设计的工业标准简表,它不依赖某个特定的商家, 7 苎! 兰墼塑旦生墼塑茎垫查塑堕 对于移动应用程序开发来说,它是一个完整的、受支持的基础。m i d p 适合诸如蜂窝电 话和寻呼机等移动设备,它提供一个标准的运行时环境,允许在终端用户设备上动态地 部署新的应用程序一m i d i e t 和服务。m i d p 包含六个软件包,三个是核心c l d c 软件包, 另外三个特定于m i d p 的软件包。 1 3j 2 e e 体系结构 j 2 e e 也是s u nm i c r o s y s t e m s 公司提供的j a v a 开发平台。但是与j 2 m e 不同,j 2 e e 主要是为企业级的开发与应用而提出的。 图1 - 6 对j 2 m e 、j 2 s e 与j 2 e e 进行了比较: 图1 - 6j 2 m e 、j 2 s e 与j 2 e e 之间的比较 由图l - 6 可以看出:支持j 2 m e 的电子设备都是内存容量有限的小型电子设备,其 j a v a 虚拟机为k v m 和c v m ;支持j 2 s e 的电子设备一般内存容量很大,其j a v a 虚 拟机为j v m ;支持j 2 e e 的电子设备一般是服务器级的企业级应用设备,内存容量非常 大,其j a v a 虚拟机为j v m 。本文主要讨论j 2 e e 体系结构。 j 2 e e 技术的基础就是j a v a 2 平台的标准版一- j 2 s e ,j 2 e e 不仅巩固了标准版中的许 多优点,例如“编写一次、随处运行”的特性、方便存取数据库的j d b ca p i 、c o r b a 技术以及能够在i n t e m e t 应用中保护数据的安全模式等等,同时还提供了对e 鹏口q ( e n t e r p r i s e j a v a b e a n s ) 、j a v a s e r v l e t s l 2 5 1 a p i 、j sp 【硐( j a v a s e r v e r p a g e s ) 以及x m l 技术的全面支持,其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的 体系结构。 j 2 e e 体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高 可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,j 2 e e 降低了开发多层 应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持e n t e r p r i s e 8 大庆石油学院硕士研究生学位论文 j a v a b e a n s ,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提 高了性能。 1 3 1j 2 e e 四层模型 j 2 e e 使用多层的分布式应用模型,应用逻辑按功能划分为组件,各个应用组件根 据他们所在的层分布在不同的机器上。j 2 e e 多层化应用能够为不同的每种服务提供一 个独立的层,图1 7 是j 2 e e 典型的四层结构: j 2 e ej 2 髓 应用程序1应用程序2 l 嬲iih t m 动l 曩面i 客户层i 群 i客户端il页面i巧l 机器 广 j s 顶面iw e b , 层i l ji j 2 e e 罔罔e n t e r p d s e 业务层i 服务器 i 数据库 ll 数据库 le i s 层l 薷霎囊 图1 - 7j 2 e e 四层模型 由图1 7 可见,从上至下分别是运行在客户端机器上的客户层组件,主要为客户端 应用程序和动态h t m l 页面;运行在j 2 e e 服务器上的w e b 层组件,主要为j s p 页面; 运行在j 2 e e 服务器上的业务逻辑层组件,主要是e n t e r p r i s eb e a n s :运行在数据库服务 器上的企业信息系统层( e n t e r p r i s ei n f o r m a t i o ns y s t e m ,e i s ) 软件,主要是基于数据库系统 的软件。实际上,图1 7 中的前三层都叫做j 2 e e 应用程序组件。j 2 e e 应用程序是由组 件构成的,j 2 e e 组件是具有独立功能的软件单元,它们通过相关的类和文件组装成j 2 e e 应用程序,并与其他组件交互。j 2 e e 说明书中定义了以下的j 2 e e 组件: ( 1 ) 应用客户端程序和a p p l e t s 是客户层组件,如图1 8 。j 2 e e 应用程序可以是基于 w e b 方式的,也可以是基于传统方式的。 ( 2 ) j a v as e r v l e t 和j a v as e r v e rp a g e s ( j s p ) 是w 曲层组件。j 2 e ew c b 层组件可以是 j s p 页面或s e r v l e t s 。按照j 2 e e 规范,静态的h t m l 页面和a p p l e t s 不算是w e b 层组 件。正如图1 - 8 所示的客户层那样,w e b 层可能包含某些j a v a b e a n 对象来处理用户输 入,并把输入发送给运行在业务层上的e n t e r p d s eb e a n 来进行处理。 9 第1 章数据同步的相关技术概述 w e b 浏览器 w e b 页面,a p p l e t 和可选的 j a v a b e a n 类 应用程序客户 和可选的 j a v a b e a n 类 w e b 层 腮踟顶r v l c 面t 1 嗡嚣类| | 业务层i ( 可选) ii 一 i 二二二二二= 二二二 j 2 e e 服务器 图1 8w e b 层组件示例图 ( 3 ) e n t e r p r i s ej a v ab e a n s ( e j b ) 是业务层组件业务层代码的逻辑满足企业级领域的 业务需要,由运行在业务层上的e n t e r p r i s eb e a n 进行处理。图1 - 9 表明了一个e n t e r p r i s e b e a n 是如何从客户端程序接收数据,进行处理,并发送到e i s 层储存的,这个过程也 可以逆向进行。 业务层e i s 层 w e b 浏览器 w e b 页面,a p p l c t 和可选的 j a v a b e a n - 类 应用程序客户 和可选的 j a v a b e a n 类 型悔a v a b e a n ,类i | 巷e n t i t y b e a n s 1 i 腰 l 二二二二二二二二 j 2 e e 服务器 图1 - 9 业务层组件示例图 有三种企业级的b e a n 会话b e a n ( s e s s i o nb e a n s ) ,实体b e a n ( e m i t yb e a n s ) ,和消息驱 动b e a n ( m e s s a g e - d r i v e nb e a n s ) ,如图1 - 9 。会话b e a n 表示与客户端程序的临时交互。 当客户端程序执行完后,会话b e a n 和相关数据就会消失。相反,实体b e a n 表示数据库 表中一行永久的记录。当客户端程序中止或服务器关闭时,就会有潜在的服务保证实体 b e a n 的数据得以保存。消息驱动b e a n 结合了会话b e a n 和j m s l ”j ( j a v am e s s a g es e r v i c e ) 的消息监听器的特性,允许一个业务层组件异步接收j m s 消息。 图1 7 中的最底端是企业信息系统层,它处理企业信息系统软件包括企业基础建设 系统,例如,企业资源计划0 i r p ) ,大型机事务处理,数据库系统和其它的遗留信息系 统等。例如,j 2 e e 应用组件可能为了数据库连接需要访问企业信息系统。 1 3 2j 2 e e 架构 这种基于组件,具有平台无关性的j 2 e e 结构使得j 2 e e 程序的编写十分简单,因为 业务逻辑被封装成可复用的组件,并且j 2 e e 服务器以容器的形式为所有的组件类型提 供后台服务。下面讨论一下容器和服务: ( 1 ) 容器和服务 1 0 大庆石油学院硕 研究生学位论文 容器定制了j 2 e e 服务器所提供的内在支持,包括安全,事务管理,j n d i ( j a v an a m i n g a n dd i r e c t o r yi n t e r f a c e ) 寻址,远程连接等服务等,以下列出最重要的几种服务: j 2 e e 安全( s e c u r i t y ) 模型:可以配置w e b 组件或e n t e r p r i s eb e a n ,这样只有 被授权的用户才能访问系统资源,不必编写加强安全性的规则。 j 2 e e 事务管理( t r a n s a c t i o nm a n a g e m e n t ) 模型:指定组成一个事务中所有方 法间的关系,这样一个事务中的所有方法被当成一个单一的单元。当客户端激活一个 e n t e r p r i s eb e a n 中的方法,容器介入一管理事务。只需在布置描述文件中声明 e n t e r p r i s eb e a n 的事务属性,而不用编写并调试复杂的代码。容器将读此文件并为用 户处理此e n t e r p r i s eb e a n 的事务。 j n d i 寻址( n d il o o k u p ) 服务:向企业内的多重名字和目录服务提供了一个统一 的接口,这样应用程序组件可以访问名字和目录服务。 j 2 e e 远程连接( r e m o t ec l i e n tc o n n e c t i v i t y ) 模型:管理客户端和e n t e r p r i s e b e a n 间的低层交互。当一个e n t e r p r i s eb e a n 创建后,一个客户端可以调用它的方法就 象它和客户端位于同一虚拟机上一样。 生存周期管理( l i f ec y c l em a n a g e m e n t ) 模型:管理e n t e r p r i s eb e a n 的创建 和移除,一个e n t e r p r i s eb e a n 在其生存周期中将会历经几种状态。 数据库连接池( d a t a b a s ec
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 塔城事业单位笔试真题2025
- 2025年山西公务员考试试题真题
- Unit 9 Let's smell the flowers.教学设计-2023-2024学年小学英语一级下剑桥少儿英语
- 2025租赁合同担保条款
- 云南省考真题2025
- 青海事业单位笔试真题2025
- 金华事业单位笔试真题2025
- 2025境外雇佣合同范本
- 化肥厂安全例会记录细则
- 2025智能穿戴设备ID设计招标合同
- 2025一建《建设工程项目管理》冲刺361题
- 人教版二年级数学上册第二单元 1~6的表内乘法必刷卷 (含答案)
- 抖音账号实名认证承诺函模板
- (2025年标准)以捐代购协议书
- GJB3165A-2020航空承力件用高温合金热轧和锻制棒材规范
- 颈部引流管的护理
- 2025至2030中国门诊外科中心行业项目调研及市场前景预测评估报告
- 2025年食药监局考试题库
- 2024年下半年黑龙江省嫩江铁路有限责任公司校招笔试题带答案
- 2025廉洁答题题库与答案
- 2025年协作机器人产业发展蓝皮书-高工咨询
评论
0/150
提交评论