




已阅读5页,还剩42页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于w e b 服务的社区卫生服务管理系统 w e bs e r v i c e 。b a s e dh e a l t hc a r e m a n a g e m e n ts y s t e mo fc o m m u n i t y 学科专业:计算机应用技术 研究生:汪雪 指导教师:李晓红副教授 天津大学计算机科学与技术学院 二零零八年八月 中文摘要 随着医疗制度的改革,社区医疗卫生服务设施的逐步完善,传统的c s 架构 的社区卫生管理系统难以实现社区之间的信息共享和数据的统一管理分析,如何 按需要实现不同社区之间的信息共享和相互调用,成为当前系统研发和实施迫切 需要解决的问题。 针对上述问题,本文设计实现了基于w e b 服务和b s 开发模式的“新一代” 社区卫生服务管理系统,将各个社区的信息资源和软件系统看作一个个服务,并 依据服务契约和元数据模型对这些服务进行统一封装,然后通过网络把服务接口 暴露给所有的关联社区,从而解决了不同社区之间的信息资源共享和统一管理问 题。具体的研究工作包括:利用基于j 2 e e 的w e b 技术对“社区卫生服务管理系 统 w e b 化,建立全新的服务管理系统;使用w e b 服务技术对系统中_ 的部分模 块服务化,实现在社区与社区之间、部门与部门之间以及社区与地区之间的信息 共享;使用基于j s p 、s e r v l e t 和j a v a b e a n 的m v c 模式实现b s 的社区卫生管理 系统。 综上,本文的研究成果提供了一种使用b s 开发模式和w e b 服务的方式进行 社区卫生管理系统开发的解决方案。使得整个社区卫生服务管理系统资源得到共 享,大大节约了系统的研发和维护带来的资源浪费。 关键词:w e b 服务b s 开发模式信息共享社区卫生服务系统 a b s t r a c t a st h eh e a l t hc a r es y s t e mr e f o r m ,c o m m u n i t yh e a l t hs e r v i c ef a c i l i t i e si nt h e g r a d u a li m p r o v e m e n t m et r a d i t i o n a lc ss k e l e t o n s c o m m u n i t yc o n s e r v a n c yo f s a n i t a t i o ns y s t e mr e a l i z e sb e t w e e nc o m m u n i t y si n f o r m a t i o ns h a r i n ga n dt h ed a t a g l o b a la d m i n i s t r a t i o na n a l y s i sw i t hd i f f i c u l t y ,h o wt od e m a n dm u s tr e a l i z eb e 锕e e n t h ed i f f e r e n t c o m m u n i t y si n f o r m a t i o ns h a r i n ga n dt r a n s f e r m u t u a l l y ,b e c o m e s q u e s t i o nw h i c ht h ec u r r e n ts y s t e mr e s e a r c ha n dd e v e l o p m e n ta n dt h ei m p l e m e n t a t i o n u r g e n tn e e dt os o l v e i nv i e wo ft h ea b o v eq u e s t i o n , t h i sp a p e rd e s i g n e dt oa c h i e v eaw e b b a s e d s e r v i c e sa n db s d e v e l o p m e n tm o d e lo f ”n e wg e n e r a t i o n ”o fc o m m u n i t yh e a l t hs e r v i c e m a n a g e m e n ts y s t e m , t ot h ev a r i o u sc o m m u n i t i e so fi n f o r m a t i o nr e s o u r c e sa n d s o f t w a r es y s t e m sa sas e r v i c e ,a n db a s e do ns e r v i c ec o n t r a c t sa n dm e t a d a t an l o d e lf o r t h e s es e r v i c e st ou n i f i e dp a c k a g e ,t h e nt h es e r v i c et h r o u g ht h en e t w o r ki n t e r f a c e e x p o s e dt oa l lt h ec o m m u n i t ya s s o c i a t i o n , s oa st os o l v et h ed i f f e r e n tc o n u n u l l i t i e s b e t w e e nt h es h a r i n go fi n f o r m a t i o nr e s o u r c e sa n du n i f i e d m a n a g e m e n to ft h e p r o b l e m , t h ec o n c r e t er e s e a r c hw o r ki n c l u d e s ,t h eu s eo fw e bt e c h n o l o g yb a s e do n j 2 e et o ”c o m m u n i t yh e a l t hs e r v i c em a n a g e m e n ts y s t e m ”w e b ,t h ee s t a b l i s h m e n to fa n e ws e r v i c em a n a g e m e n ts y s t e m , t h eu s eo fw e b s e r v i c e st e c h n o l o g yt ot h es y s t e mi n p a r t o ft h es e r v i c em o d u l e ,a n di n t h ec o m m u n i t ya n db e t w e e nc o m m u n i t i e s 。 g o v e m m e n td e p a r t m e n t sa n db e t w e e nc o m m u n i t i e sa n dt h es h a r i n go fi n f o r m a t i o n b e t w e e nr e g i o n s ,b a s e do nt h eu s eo fj s p ,s e r v l e ta n dj a v a b e a nm o d e lt oa c h i e v et h e m v cb so ft h ec o m m u n i t yh e a l t hm a n a g e m e n t s y s t e m c o m p r e h e n s i v eo n ,i nt h i sp a p e r , t h er e s u l t so fr e s e a r c ho nt h eu s eo fb st o p r o v i d ead e v e l o p m e n tm o d e la n dw e bs e r v i c e sa p p r o a c ht oc o m m u n i t yh e a l t h m a n a g e m e n ts y s t e md e v e l o p m e n ts o l u t i o n s m a k e st h ee n t i r ec o m m u n i t y ,r e g i o n , a n d e v e nt h ee n t i r ec i t y sh e a l t hs e r v i c e sa r ec e n t r a l i z e dm a n a g e m e n t s y s t e m ,c o n s e r v a t i o n o ft h es y s t e ms i g n i f i c a n t l yi nt h ed e v e l o p m e n ta n dm a i n t e n a n c eo ft h ew a s t eo f r e s o u r c e s k e yw o r d :w e bs e r v i c e b sd e v e l o p m e n tm o d e l i n f o r m a t i o ns h a r i n g h e a l t hc a r es y s t e m o fc o m m u n i t y 独创性声明 本人声明所星交的学位论文是本人在导师指导下进行的研究工作和取得的研究成 果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表或撰写过的研 究成果,也不包含为获得墨鲞盘堂或其他教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了 谢意。 学位论文作者签名:王嗲 签字日期: 年夕月 学位论文版权使用授权书 2 7 日 本学位论文作者完全了解苤鲞盘堂有关保留、使用学位论文的规定。特授权 墨盗盘堂可以将学位论文的全部或部分内容编入有关数据库进行检索,并采用影印、 缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校向国家有关部门或机构送 交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 导师签名: 签字日期:秽歹年艿叼日 曰 4 , , 月 ,辜qd亏轳 遗 年 孙 以 签 者 ; 作 期 文 日 论 字 位 签 学 第一章绪论 1 1 选题背景 第一章绪论 随着社会的发展,人民生活水平的改善,社区服务已逐渐被人们认识并认 可。社区卫生服务是社区服务的重要组成部分,是社区居民的健康保障。社区卫 生服务包括健康教育、预防、保健、医疗、康复、计划生育技术指导等一系列工 作,管理成为社区卫生服务的关键。目前,全国9 5 的地级以上城市、8 6 的市 辖区和一批县级市开展了城市社区卫生服务,全国已设置社区卫生服务中心3 4 0 0 多个,社区卫生服务站近1 2 0 0 0 个,创建了1 0 8 个全国社区卫生服务示范区。以 社区卫生服务中心为主i 社区卫生服务站为辅,医疗诊所、医务室为补充的社区 卫生服务体系框架,正在大、中型城市逐步形成【ij 。社区卫生服务系统的目标应 完成社区卫生服务站( 中心) 的社区居民健康档案的建立,健康教育、预防、保 健、医疗、康复、计划生育技术指导等各项服务工作,同时完成对所产生的信息 进行管理,随时自动生成工作中要求的报表。 目前社区卫生服务系统建设的现状可以概括为:经济发达城市地区建设很普 遍,系统发展不平衡。大部分城市社区建立了社区卫生服务系统,但很多社区的 卫生服务系统仍处于单机运行阶段,系统功能主要是支持社区卫生医疗信息管 理,没有形成全局性的集成系统。当前流行社区卫生服务管理系统主要采用的是 c s 结构,各个社区数据库单独建立,采取定期数据汇总上报的形式进行数据统 计和分析。 随着我国卫生经济体制改革的深入进行,医疗卫生服务部门的经济利益及 行为主体的多元化,医疗卫生组织的多样化、有序化日渐显著,影响其发展的因 素也越来越复杂。要实现现阶段医疗卫生服务系统的科学决策和有效组织,就必 须首先着力研究和解决不同医疗卫生组织的决策行为及其互相影响问题,以实现 医疗卫生服务系统的有效运行。提高卫生服务的服务水平和服务能力,是关系到 卫生生存发展的大事,建设高水平的卫生服务管理体系必须从提高服务管理水平 着手。在社区卫生服务管理水平的高低很大程序上体现在社区卫生服务信息的管 理中。随着工作量的加大,工作效率要求不断提高,社区卫生服务管理工作日趋 繁重复杂,原始的手工或半自动化管理方式的弊端日益显露出来。社区之间的卫 生服务信息、系统之间的业务联系需要得到加强和改善,只有这样才能对各个社 区之间的信息共享,充分了解到社区居民的医疗卫生状况。由于各个社区的卫生 第一章绪论 服务管理系统不是同时建设的,在建设初期没有i t 全局战略和方向,缺乏一个 标准的i t 环境,因此所建立的各个系统是分散的。各社区各自为政,形成了一 个个信息“孤岛”。建立社区之间的联系需要把数据在不同的系统之间抄来抄去。 手工处理大量数据,不但给工作人员带来极大的压力,而且容易产生操作上的失 误。另外,原来管理系统信息查询功能只供内部管理人员使用,非常不适应现行 的管理模式。这就在很大程度上影响了卫生服务管理工作的效率。社区网的普及, 使得医疗系统运用现代化的手段进行卫生服务管理工作己经成为可能,建立全面 的具有综合性、通用性、开放性、实用性和灵活性的社区卫生服务系统,已成为 迫在眉睫的任务。 1 2 课题研究的意义和主要内容 当前,随着医疗制度的改革,社区医疗卫生服务设施的逐步完善,越来越多 的社区卫生服务管理系统被实施和应用。由于大部分系统采用的是c s 架构,使 得各个社区的系统“各自为政,数据不能得到共享和统一管理分析,如何按需 要实现它们之间的相互调用,成为当前系统研发和实施迫切需要解决的问题。 基于w - e b 服务和b s 开发模式的“新一代 社区卫生服务管理系统,为解决 以上问题提供了有效的技术方案。w e b 服务和w e b 技术是基于标准的、可经济实 惠地实现数据共享、分布式部署和提高软件实施和升级的好方法。正是基于此方 法,本课题选择“社区卫生服务管理系统 为设计案例,尝试架构一个基于w e b 服务的b s 架构的管理系统,并运用w e b 服务技术实现这种架构的关键技术,为 处在完善阶段的社区卫生服务系统提供一些可参考的技术方案瞄j 。 具体的研究工作主要包括以下几个方面: 利用基于j 2 e e 的w e b 技术对“社区卫生服务管理系统”w e b 化,建立 全新的服务管理系统; 使用w e b 服务技术对系统中的部分模块服务化,实现在社区与社区之 间、部门与部门之间以及社区与地区之间的信息共享,大大提高了工作 效率,降低了系统的维护成本。 使用基于j s p 、s e r v l c t 和j a v a b e a n 的m v c 模式实现b s 的社区卫生管 理系统; 2 第一章绪论 1 3 论文的组织 全文共分为5 章: 第1 章,讨论了课题的研究背景、发展状况、技术手段及其意义,并指出了 本课题的研究内容和工作重点,最后介绍了论文的组织。 第2 章,从技术理论上对本课题所使用的技术进行论述,对w e b 技术和w e b 服务都进行了相应的论述。介绍到w e b 技术的概念,w e b 技术在客户端和服务 端的相关技术。 第3 章,对“社区卫生服务管理系统”进行了系统的分析,设计整个系统的 详细架构,并对系统中的各个模块功能进行了描述。 第4 章,对“社区卫生服务管理系统 进行具体的实现。从系统模块图,类 图的角度对系统的实现进行说明。主要包括以下几个方面:使用a d o 实现数据 层服务、实现基于二进制位运算的二级权限控制以及使用w e b 服务对关联社区 的药品查询业务进行重新封装,实现了社区之间的药品信息共享,大大提高了系 统的运行效率和可重用性。 第5 章,对本课题工作的进行了总结与展望。阐述了论文工作的特色和意义, 提出了进一步的研究方向。 第二章w e b 开发及w e b 服务相关技术 第二章w e b 开发及w e b 服务相关技术 2 1w 曲技术概述 2 1 1w 曲客户端技术 w e b 客户端的主要任务是展现信息内容,其主要技术有: h t m l 语言,是信息展现的最有效载体之一。h t m l 语言主要在浏览器中展 现静态的文本或图像信息,这满足不了人们对信息丰富性和多样性的强烈需求一 一这件事情最终的结果是,由静态技术向动态技术的转变成为了w e b 客户端技术 演进的永恒定律p j 。 。j a v a 或j a v a s c f i p t 语言,j a v a s c r i p t 语言在所有客户端开发技术中占有非常独 特的地位:它是一种以脚本方式运行的,简化了的j a v a 语言,这也是脚本技术 第一次在w e b 世界里崭露头角。 v b s c r i p t 语言,是m i c r o s o f t 公司与j a v a s c r i p t 抗衡的产物。 c s s ( c a s c a d i n gs t y l es h e e t s ) 和d h t m l ( d y n a m i ch t m l ) 技术,动态h t m l 标记、c s s 和动态对象模型( d h t m l o b j e c tm o d e l ) 发展成为一套完整、实用、 高效的客户端开发技术体系,m i c r o s o f t 称其为d h t m l 。同样是实现h t m l 页 面的动态效果,d h t m l 技术无需启动j a v a 虚拟机或其他脚本环境,可以在浏览 器的支持下,获得更好的展现效果和更高的执行效率。 2 1 2w e b 服务端技术 与客户端技术从静态向动态的演进过程类似,w e b 服务端的开发技术也是由 静态向动态逐渐发展、完善起来的。其主要技术有: p h p ( p e r s o n a lh o m ep a g et o o l s ) 语言,该语言将h t m l 代码和p h p 指令 合成为完整的服务端动态页面,w e b 应用的开发者可以用一种更加简便、快捷的 方式实现动态w e b 功能。 a s p ,m i c r o s o f t 借鉴p h p 的思想,在其w e b 服务器i i s3 0 中引入了a s p 技术。a s p 使用的脚本语言是我们熟悉的v b s c n p t 和j a v a s c r i p t 。借助m i c r o s o f t v i s u a ls t u d i o 等开发工具在市场上的成功,a s p 迅速成为了w i n d o w s 系统下w e b 服务端的主流开发技术。 j s p 和s e r v l e t ,s e r v l e t 和j s p 的组合( 还可以加上j a v a b e a n 技术) 让j a v a 开发者同时拥有了类似c g i 程序的集中处理功能和类似p h p 的h t m l 嵌入功 4 第二章w e b 开发及w e b 服务相关技术 能,此外,j a v a 的运行时编译技术也大大提高了s e r v l e t 和j s p 的执行效率 这也正是s e r v l e t 和j s p 被后来的j 2 e e 平台吸纳为核心技术的原因之一。 2 2w e b 服务技术概述 2 2 1w e b 服务的定义及发展历程 随着计算机技术的发展,大量微型计算机出现,组件和分布式技术得到了广 泛的应用,在其发展的历程中,涌现了以下集中技术: ( 1 ) c o m 和c o r b a 2 0 世纪9 0 年代初期,m i c r o s o f t 的c o r n 和o m g 的c o a ,这两种技术都允许 将功能单元作为二进制对象重用,并允许同一台计算机上的软件通过一种指定的 方法共享代码,从而实现了应用程序之间共享代码 ( 2 ) d c o m 2 0 世纪9 0 年代中期,随着局域网的兴起,需要在计算机之间彼此通信, m i c r o s o f t 使用d c o m ( d i s t r i b u t e dc o r n ) 扩展了组件模型,用来实现计算机之间 共享代码。d c o m 只是一个有线协议,指示c o m 对象如何通过计算机边界进行 通信。o m g 引入了一个它自己的有线协议,名为i i o p ( o r b 间协议) ,它用来允 许不同的c o r b ao r b 在i n t e m e t 上协调工作。 ( 3 ) w e b 服务( w e bs e r v i c e s ) 2 0 0 0 年初,一种新的技术w e bs e r v i c e s ( 更准确的说是一种新的协议) 出现为分布式技术发展开启了一扇新的窗口。w e b 服务采用开放的标准,技术的 每个方面都是公共标准定义的;同时w e b 服务具有跨平台的功能,任何可以创建 x m l 文档并在h t t p 上发送信息的程序设计语言都可以与任何w e b 服务交互。 以上三种技术的出现,推动了分布式技术的迅猛发展。同时由于应用的层面 不同,也存在相应的局限性。 c o m d c o m 和c o r b 1 1 0 p 都不能在i n t e m e t 上很好地工作。这两个标准是 互斥的,d c o m 服务只能与d c o m 客户交互,d c o m 只局限于运行在w i n d o w s 平台,c o r b a 与c o m 一样,是一个复杂的二进制标准,不能很容易地在防火墙 上工作。 d c o m 允许开发人员按照在本地计算机上使用c o m 对象的相同方式在远程 计算机上使用c o m 对象,但是d c o m 并不适合分布式网络,它所使用的方案, 不断测试( p i n g ) 或保持活动的消息,增加了太多的开销,在i n t e m e t 的无状态环 境下显得没有意义。 w e b 服务部署方便,但是由于各主要软件厂商之间的差异,造成相应的开发 第二章w e b 开发及w e b 服务相关技术 工具不尽相同,存在一定的开发通用性。本文采用的是m i c r o s o f t 的d o t n e t 进行 开发的。 表2 1 分布式对象模型的特征比较 特征 c o r b ad c o m w e b 服务 远程过程调用 i n t e m e t 分布式计算环境超文本传输协议( h t t p ) ( r p c ) 机制 o r b 协议( i i o p ) 远程过程调用 ( d c e - r p c ) 编码 通用数据表示( c d r )网络数据表示( n d r )扩展标记语言( x m l ) 接口描述 接口定义语言( i d l )接口定义语言( i d l ) w e b 服务描述语言 ( w s d l ) 发现命名服务与交易服务注册库通用发现、描述与集成机 错t j ( u d d i ) 防火墙友好性否否是 协议的复杂性高高低 跨平台性部分否是 其中w e b 服务在近两年取得了巨大的发展。但是各个公司对w e b 服务的定义 则各不相同,目前主要的w e b 服务基础架构的提供者都发布了他们对w e b 服务的 理解。主要的定义如下。 i b m 对w e b 服务的定义: “w e b j 艮务是描述一些操作,利用标准化的x m l ( e x t e n s i b l em a r k u p l a n g u a g e ) 消息传递机制可以通过网络访问这些操作的接口。w e b 服务是用标准 的、规范的x m l 概念描述的,称为w c b 服务的服务描述。这一描述囊括了与服务 交互需要的全部细节,包括消息格式( 详细描述操作) 、传输协议和位置。该接口 隐藏了实现服务的细节,允许独立于实现服务基于的硬件或软件平台和编写服务 所用的编程语言使用服务。这允许并支持基于w e b 服务的应用程序成为松散藕 合、面向组件和跨技术实现。w e b 服务履行一项特定的任务或一组任务。w e b 服 务可以单独或同其它w e b 服务一起用于实现复杂的聚集或商业交易一j 。 微软的定义是: “w e b 服务是一个应用逻辑单元,它为其他应用提供了数据和业务。应用通 过通用的w e b 协议和数据格式,如h t t p 、x m l 和s o a p ( s i m p l eo b j e c ta c c e s s p r o t o c 0 1 ) 来访问w e b 服务,不必考虑每个w e b 服务是如何实现的。w e b 服务结合 了基本的组件开发和w e b 的优势,是组成m i c r o s o f t n e t 编程的基石。” “w e b 服务是在i n t e m e t 上进行分布式计算的基本构造块。开放的标准以及对 用户和应用程序之间的通信和协作的关注产生了这样一种环境,在这种环境下, w e b 服务成为应用程序集成的平台。应用程序是通过使用多个不同来源的w e b 服 务构造而成的,这些服务相互协同工作,而不管它们位于何处或者如何实现。 “w e b 服务是通过s o a p 在w e b 上提供的软件服务,使用w s d l 文件进行说 6 第二章w e b 开发及w e b 服务相关技术 明,并通过u d d i 进行注册p j 。 s u n 的定义是: “w e b 服务是软件组件,它可以被自动地查找、组合、重组,提供用户请求 的处理方案。j a v a 语言和x m l 是w e b 服务中最重要的技术1 6 。” 上面的定义都是描述性的,虽然很难给出一个准确的w e b 服务的定义,但是 大家对w e b 服务有了一定的共识。我们从上面的定义中可以看出,w e b 服务是一 个独立于平台和开发工具的软件模块。经过对w e b 服务比较和分析,我们认为 w e b 服务的主要特点是: ( 1 ) w c b 服务有完好的封装性。w e b 服务是一种对象。对于调用这些服务的 开发者而言,仅仅能看到服务提供的功能,不能也无需了解这些服务是如何实现 的。 ( 2 ) w e b 服务是一种松耦合的对象。只要w e b 服务提供的接口功能不变,不 论其实现如何变动,对于调用者而言都是透明的。甚至当w e bs e r v i c e s 的实现平 台发生迁移时,用户都可以对此一无所知。同时由于w e b 服务提供即时连接的功 能,因此在编写程序的时候,无需预先知道被调用对象的组件的实例,使得其应 用更加松散。 ( 3 ) w e b 服务使用标准的协议规范。所有w e b 服务的公共接口都是使用开放 的标准协议进行的。 ( 4 ) w e b 服务是可以查找和自描述的。这样开发人员可以简单地发现w e b 服 务并且加以调用,同时提供简单的方法说明服务的接口是什么。 ( 5 ) w e b j 艮务具有高度可集成能力。由于w e b j 艮务采用x m l 作为服务的描述和信息的封 装,因此除去了平台的差异。因此,无论是c o r b a 、d c o m 还是d j b ,都可以通过这一种 标准的协议进行互操作,实现了在当前环境下最高的可集成性。 2 2 2w e b 服务的体系结构及协议栈 w e b 服务体系结构中主要包括:角色( 服务的提供者、服务请求者和服务注 册中心) 、操作( 发布、查找和绑定) 、构件( 服务和服务描述) 。w e b 服务 最典型的实现模型是:服务提供者开发一个通过网络可以被访问的服务,然后将 服务的描述注册到服务注册中心或者发送给服务请求者。服务请求者使用查找操 作从本地或服务的注册中心得到服务描述,并使用服务描述中的信息与服务的提 供者实现绑定,然后与w e b 服务交互,调用其中的操作。服务的提供者和服务的 请求者是w e b 服务的逻辑基础,一个w e b 服务既可以是提供者也可以是请求者。 图2 1 显示了这些操作、提供这些操作的组件及它们之间的交互【7 1 0 第二章w e b 开发及w e b 服务相关技术 图2 1w e b 服务体系架构模型 ( 1 ) w e b 服务的角色 夺服务提供者( s e r v i c ep r o v i d e o 指服务的所有者,或者指提供访问服务的平台。 冷服务请求者( s e r v i c er e q u e s t e r ) :指特定功能的需求者,或者指查找和调用服 务的客户端应用程序。服务请求者角色可以是人使用浏览器完成,也可以是 没有用户界面的应用程序发出。 夺服务注册中心( s e r v i c er e g i s t r y ) :指用来存储服务描述信息的信息库 ( r e p o s i t o r y ) 。服务提供者在这里发布他们的服务,服务请求者在这里查找服 务,获取服务的绑定信息。 ( 2 ) w e b 服务的操作 对于利用w e b 服务的应用程序,必须发生以下三个行为:发布服务描述、查 询或查找服务描述以及根据服务描述绑定或调用服务。这些操作可以单次或反复 出现。这些操作具体为: 令发布( p u b l i s h ) :只有可以被用户发现并使用的服务才能真正发挥其作用, 因此服务提供者首先需要将服务进行一定描述并发布到注册服务器上。 在发布操作中,服务提供者需要通过注册服务器的身份验证,才能对服 务描述信息进行发布和修改。 查找( f i n d ) :服务发布之后,需要解决的问题是如何使服务能够被发现, 服务请求者根据注册服务器提供的规范接口发出查询请求,以获取绑定 服务所需的相关信息。在查找操作中,一般包含两种查找模式:一种是 浏览模式( b r o w s ep a t t e r n ) ,即服务请求方可以根据各种国际通用的行业 分类标准来浏览或者通过一些比较宽泛的关键字来搜索,并逐步缩小查 找的范围,直到找到满足需要的服务,查找结果一般是一系列服务的集 第二章w e b 开发及w e b 服务相关技术 合;另一种是直接获取模式( d m l d o w np a t t e r n ) ,即通过唯一性的关键 字直接得到特定服务的描述信息,其查找结果是唯一的p j 。 夺绑定( b i n d ) :最后需要解决的问题是如何实现对服务的调用。在绑定操作 中,服务请求者通过分析从注册服务器中得到的服务绑定信息,可以知 道调用该服务所需的详细要求,包括服务的访问路径、服务调用的参数、 返回结果、传输协议、安全要求等,服务请求者使用服务描述中的绑定 细节来定位、联系和调用服务。 ( 3 ) w e b 服务的构件 夺服务( s e r v i c e ) :w e b 服务是一个由服务描述来描述的接口,服务描述的 实现就是该服务。服务是一个软件模块,它部署在由服务提供者提供的 可以通过网络访问的平台上。服务存在就是要被服务请求者调用或者同 服务请求者交互。当服务的实现中利用到其它的w e b 服务时,它也可以 作为请求者。 夺 服务描述( s e r v i c ed e s c r i p t i o n ) :服务描述包含服务的接口和实现的细节。其中包括 服务的数据类型、操作、绑定信息和网络位置。还可能包括可以方便服务请求者发 现和利用的分类及其它元数据。服务描述可以被发布给服务请求者或服务注册中 心。 w e b 服务实现的机理包括w e b 服务的发布、发现、描述及w e b 消息的传送 等几个典型的操作,为了让不同的系统能够顺利地实现w e b 服务交互,需要有一 系列标准的技术支撑。目前,w e b 服务的体系结构被定义为几个层次,整个w e b 服务的技术系列被称为是w e b 服务协议栈,它们就像一个堆栈那样,按照这样 的方式协作工作。和网络的分层结构相同,上层的功能必须依靠下层的支持,各 个协议层的公共机制在各个层次都有所体现。w e b 服务协议栈如图2 2 所示。 w s f l 图2 2w e b 服务协议栈 9 第二章w e b 开发及w e b 服务相关技术 ( 1 ) 网络传输层 w e b 服务协议栈的基础是网络层( n e t w o r k ) 。为了让w e b 服务能够被来自不 同系统的客户使用,应用于w e b 服务的数据传输技术必须是应用最广泛的。h t t p 凭借其普遍性成为了w e b 服务实现中首选的网络协议。其他一些i n t e m e t 协议, 比如s m p t 和f t p 等,也可以用于w e b 服务。而在i n t r a n e t 环境下,还可以使 用w e b s p h e r em q 和c o r b a 等中间件技术。w e b 服务的好处之一在于它能够为 i n t e m e t 和i n t r a n e t 服务开发和使用提供了统一的编程模型。所以,网络协议和技 术的选择对于服务开发者来说是透明的。 ( 2 ) 数据表现层 数据表现层的x m l 为整个w e b 服务上层协议提供了数据、信息描述手段, x m l 是目前全球范围内用于描述数据和交换数据的一种标准方式。 x m l 作为i n t e r n e t 上的一种新的数据交换标准,其应用范围从早先的w e b 信息描述,发展到后来的数据交换的开放标准,乃至目前的服务集成和服务交互 的开放技术,x m l 已经成为开放环境下描述数据描述信息的标准技术。在w e b 服务的时代,全部的规范、技术同样都是以x m l 为底层核心和构架基础的。对 于w e b 服务而言,无论是w e b 服务的调用( s o a p 技术) 、w e b 服务界面的描 述( w s d l 技术) ,还是w e b 服务的发现( u d d i 技术) ,都是使用x m l 作为信 息描述和交换的标准手段。 ( 3 ) 数据模型层 数据模型层,描述数据结构的数据模型( 也称为元数据) 。它同样也是一种 数据,因此,描述数据结构的方式也是使用基础的数据表现方式:x m l 。 x m l s c h e m a 已经成为x m l 世界中的标准数据建模语言和标准交流工具, s o a p ,w s d l ,u d d i 的x m l 语法都是采用x m ls c h e m a 进行定义和描述的。 ( 4 ) 基于x m l 的消息层 在这一层次,使用的是基于x m l 的消息协议s o a p 。所有的s o a p 消息都 支持w e b 服务架构中的发布( p u b l i s h ) 、绑定( b i n d ) 和查找( f 砌) 等操作。 s o a p 由三部分组成: 一个使用x m l 信封来描述消息内容的机制; 一组编序规则,用于编码各种类型的数据; 令一个提供远程过程调用( r p c ) 和响应的机制。 ( 5 ) 服务描述层 服务描述为调用w e b 服务提供了具体的方法。w s d l 是一个基于x m l 格式 的定义服务实现和接口的基础标准。w s d l 将服务的描述分为两部分:服务实现 和服务接口。在按照w s d l 进行服务实现之前,我们必须先定义服务接口。w s d l 仅是一个基本的服务描述手段,要指定业务环境、服务之间的关系和服务质量, l o 第二章w e b 开发及w e b 服务相关技术 我们还需要其它的描述手段p j 。 ( 6 ) 服务发布层 服务发布是指让服务的请求者得到w s d l 文档,这个操作可以在服务请求 者生命周期的任何阶段执行。最简单的方法就是服务提供者将w s d l 文档直接 发送给服务请求者,这种方法称为材直接发布”。电子邮件就是一种直接发布的 方式。直接发布经常使用在静态绑定的应用程序中。此外,服务提供者可以把描 述服务的w s d l 文档发布到本地w s d l 注册库、公有u d d i 或私有u d d i ( 操 作节点的主机上) 注册中心。 ( 7 ) 服务发现层 服务发现是基于服务发布的。如果w e b 服务没有或不能被发布,那么它就 不能被发现。任何允许服务请求者得到服务说明并在运行时刻让应用程序使用的 机制都可以被看作服务发现。服务客户端可以在运行时刻获取服务描述。服务客 户端可以获取一个以本地文件形式存在的w s d l 文档,这个文档是通过直接发布 手段发布的,这一操作被称为静态发现。同时,这个服务客户端也可以选择在设 计阶段或运行时刻通过一个本地w s d l 注册库或公共私有的u d d i 注册中心发现 w s d l 文档。 ( 8 ) 服务工作流层 单独的w 曲服务只能完成单一的工作,而事实上的商务活动,都不是单一的 操作能够完成的,需要一系列操作步骤。并且,在大部分情况下,这些操作不是 相互独立,各自为政的,而是需要互相协作,形成一个工作流。在形成工作流之 后,才能解决具体的商务问题。形象一点的描述就是,u d d i 定义了函数过程, 而服务集成则要将这些函数过程组织成程序或事务。形成工作流的前提条件, 就是需要w e b 服务之间能进行互操作。该层描述了如何执行服务到服务的通讯、 合作以及流程,w 曲服务工作流语言( w s f l ) 用于描述这些交互。 2 2 3w e b 服务的优势及其不适用域 ( 1 ) w e b 服务的优势 1 0 】 基于标准:客户和服务无论位于何种平台,客户都可以方便地使用w e b 服务; 夺技术开放性:合作式的开发,避免了w e b 服务独家垄断; 令简便性:尽管w e b 服务中采用了数量众多的标准与协议,实际上,操作 系统与开发工具支持这些标准和协议,编程人员无需了解细节; 令独立于语言和平台:使用w e b 服务只需满足两个前提,即使用t c p i p 进行通讯,并能处理x m l 语言,w e b 服务不要求使用某种特定的编程 语言或操作系统; 第二章w e b 开发及w e b 服务相关技术 令功能抽象:w e b 服务可以提供一个接口,将多个系统的底层功能聚合起 来; 可发现性:w e b 服务提供发布服务中心,供客户查找服务; 令提高开发效率:w e b 服务将组件的重用提高到一个新的水平,多个用户 可以同时使用相同的组件,而且可以跨组织共享组件。 ( 2 ) 不适于使用w e b 服务的情况: 夺闭合式系统:系统设计目标是已经预先定义好的,解决方案面向特定的 用户、特定的平台; 性能优化的重要性:w e b 服务提供的灵活性是以牺牲性能为前提的, w e b 服务处理x m l 文档的速度可能相当慢,对性能重要的系统,要经 过测试论证其可用性; 夺可靠性:由于w e b 服务依赖于i n t e r n e t 协议来提供尽可能广泛的支持, 使用w e b 服务时穿越企业防火墙的数据通讯,系统的可靠性是应考虑的 问题。 2 2 4w e b 服务的三大解决方案 当前,对w e b 服务的框架应用主要由三大软件厂商提供: ( 1 ) m i c r o s o f t 的m i c r o s o f t n e t m i c r o s o f t n e t 是一个由s e r v e r ,c l i e n t 和s e r v i c e 组成的平台。n e t 框架包 括基本的c l r 、运行库、用户接1 2 1 库、编程语言( c j f j ,c + + ,v b n e t ,j s c r i p t n e t , a s p n e t 等) 以及n e t 框架a p i 的各个方面。 n e t 提供了通过x m lw e b 服务迅速可靠地构建、托管、部署和使用安全 的联网解决方案的能力。m i c r o s o f t n e t 平台提供了一套联网所需的开发人员工 具、客户端应用程序、x m lw e b 服务和服务器。 对w i n d o w s 操作系统来说,开发w e b 服务最好的应用集成平台是m i c r o s o f t n e t 。m i c r o s o f t n e t 是m i c r o s o f t 应w e b 服务时代的应用开发环境推出的一个 整体技术框架。n e t 技术是2 0 0 0 年微软公司推出的全新概念,它代表了一个集 合、一个环境、一个编程的基础结构。m i c r o s o f t n e t 己与w i n d o w ss e r v e r2 0 0 3 家族紧密集成。它使用x m lw e b 服务使软件集成程度达到了前所未有的水平: 离散、组件化的应用程序通过i n t e r n e t 互相连接并与其他大型应用程序相连接。 ( 2 ) s u n 的j 2 e e j 2 e e ( j a v a 企业版) 则是一组规范集,其中的每一个规范规定了j a v a 技术 应当如何提供一种类型的功能。j 2 e e 平台为基于多层分布式应用模型的j a v a 应 用的设计、开发、装配和部署提供了一个完整的框架。j 2 e e 规范为应用开发和 企业系统集成,定义了数目众多的应用编程接口( a p i ) 和多种应用编程模型。 1 2 第二章w e b 开发及w e b 服务相关技术 j 2 e e 最初是为了将j a v a 平台拓展到企业级解决方案的应用领域而制定的一 个平台框架规范,随着w e b 服务的兴起和发展,j 2 e e 平台作为一个企业级应用 的开发和部署平台,是无法回避业界的重大技术革命“w e b 服务的。随着w e b 服务技术的发展,j 2 e e 不断地将w e b 服务的支持引入进j 2 e e 框架。 ( 3 ) b e a 的w e b l o g i c b e a 公司w e b l o g i c 是以j a v a 为基础的w e b 服务框架,在具体的应用框架 中,包括了针对应用的表现层服务、服务器端进程、会话管理、商业逻辑框架、 应用数据缓存、应用逻辑、持久化性能、事务、! 安全和日志服务等。应用框架的 目标是提供一个统一的软件框架,以减少对企业软件产品
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025贵州黔晨综合发展有限公司招聘观光车驾驶员及高压电工人员15人考前自测高频考点模拟试题及答案详解(夺冠)
- 2025贵州铜仁市万山区事业单位引进高层次及急需紧缺人才12人考前自测高频考点模拟试题及1套完整答案详解
- 2025江苏镇江市直教育系统紧缺教育人才引进8人模拟试卷附答案详解(黄金题型)
- 2030年新能源行业拓展策略报告:技术创新引领新能源汽车渠道拓展
- 2025广西北海市银海区平阳学校招聘教师1人考前自测高频考点模拟试题附答案详解
- 2025湖南娄底市残疾人联合会所属事业单位引进高层次和急需紧缺人才组考模拟试卷及参考答案详解1套
- 2025广投集团春季校园招聘230人考前自测高频考点模拟试题带答案详解
- 2025呼伦贝尔鄂温克族自治旗融媒体中心多元化岗位招聘工作人员考前自测高频考点模拟试题及答案详解(全优)
- 2025年福建省晋江市建设投资控股集团有限公司及其权属子公司招聘31人模拟试卷及1套参考答案详解
- 3.5跨学科实践中国乐器教案-教科版物理八年级上学期
- 医学细胞生物学细胞的内膜系统
- 《孕前和孕期保健》课件
- 肾病科糖尿病肾病(DKD)与终末期肾病血液透析(ESRD-HD)单病种质量控制统计表
- 空间设计教学大纲 室内设计教学大纲(五篇)
- 促单技巧及话术大全
- 车辆司法鉴定申请书
- 塑料原料名称中英文对照表
- 二年级应用题大全800题二年级上册数学乘法应用题
- 第十四杂环化合物
- GB/T 5454-1997纺织品燃烧性能试验氧指数法
- GB/T 11186.2-1989涂膜颜色的测量方法第二部分:颜色测量
评论
0/150
提交评论