基于soa的林业资源管理系统的设计与实现硕士论文.pdf_第1页
基于soa的林业资源管理系统的设计与实现硕士论文.pdf_第2页
基于soa的林业资源管理系统的设计与实现硕士论文.pdf_第3页
基于soa的林业资源管理系统的设计与实现硕士论文.pdf_第4页
基于soa的林业资源管理系统的设计与实现硕士论文.pdf_第5页
已阅读5页,还剩47页未读 继续免费阅读

基于soa的林业资源管理系统的设计与实现硕士论文.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

西安电子科技大学 硕士学位论文 基于soa的林业资源管理系统的设计与实现 姓名:张志刚 申请学位级别:硕士 专业:软件工程 指导教师:姜建国;李继文 20080101 摘要 随着计算机、数据库、网络等技术的发展以及在林业中的广泛应用,林业行 业的各部门构建了许多应用系统,但开发者往往只注重实现当前的需求和设计, 而没有考虑软件资源的扩展性和复用性。系统平台的差异以及数据标准、存储方 式的不同,导致了各应用系统之间不能互连互通,数据无法共享,形成了一个个 信息孤岛。 本文在研究和分析林业资源管理的相关需求和流程的基础上,以消除信息孤 岛、实现各系统松耦合集成为目的,提出了基于面向服务架构( s o a ) 来构建数字 林业平台的思想;然后通过对s o a 实现关键技术的研究,采用面向服务的集成方法, 设计了一个市级林业局林业管理平台的体系结构;最后,基于该体系结构进行设 计与开发,运用w e b 服务对现有系统和新的组件模块进行封装,并通过对树种信息 服务、接口组件的开发过程的具体说明,详细阐述了系统的实现。 通过应用表明,本系统通用性强、能够实现一体化的信息共享、协同作业,大 大提高了林业信息管理的效率。 关键词:数字林业面向服务架构w e b 服务森林资源 a b s t r a c t a st h ed e v e l o p m e n to fc o m p u t e r , d a t a b a s ea n dn e t w o r kt e c h n o l o g y ,m a n yp a r t so f f o r e s ti n d u s t r yh a v es e t t l e dl o t so fa p p l i c a t i o ns y s t e m s s i n c et h ed e v e l o p e r su s u a l l yj u s t p a ya t t e n t i o nt ot h ep r e s e n tn e e d sa n dd e s i g n , t h ee x p a n s i b i l i t ya n dr e u s a b i l i t yo ft h e s o t t w a r er e s o u r c e sa r en o tw e l lc o n c e m e d b e c a u s eo ft h ed i f f e r e n c eb e t w e e ns y s t e m p l a t f o r m s ,d a t as t a n d a r d sa n ds t o r a g em o d e ,d a t ac a n tb es h a r e db e t w e e ns y s t e m sa n d r e s u l ti ns o c a l l e di n f o r m a t i o ni s o l a t ei s l a n d s b a s e do nt h er e s e a r c ha n da n a l y s i so fn e e d sa n dw o r kf l o wa s s o c i a t e d 、析t l lf o r e s t r e s o u r c e sm a n a g e m e n t ,a i mt oe l i m i n a t ei n f o r m a t i o ni s o l a t ei s l a n d sa n dr e a l i z el o o s e c o u p l i n gi n t e g r a t i o n ,t h i sd i s s e r t a t i o nh a sp r o p o s e dt h es o l u t i o nb a s e do ns o a t h i s d i s s e r t a t i o nh a ss t u d i e dt h et h o u g h t so fs o a ,d e s i g n e da n dd e v e l o p e dt h ef o r e s t r e s o u r c e sm a n a g e m e n ta p p l i c a t i o ns y s t e ma tt h ep r e f e c t u r e - l e v e lc i t y a st h es y s t e m u s e dw e bs e r v i c e st e c h n o l o g yt op a c k a g et h ep r e s e n ts y s t e ma n dn e wm o d u l e s ,i th a s a v o i d e dr e p e a t a b l ed e v e l o p m e n t ,i m p r o v e dr e u s a b i l i t ya n dm a d et h en e wm o d u l e sc a n e a s i l yi n t e g r a t e d 、i mt h eo r i g i n a ls y s t e m t h o u g ht h ei m p l e m e n t ,t h es y s t e md e m o n s t r a t e dh i g hc o m m o n a l i t y , f u l f i l l e dd a t a s h a r i n ga n di m p r o v e dt h ee f f i c i e n c yo b v i o u s l y k e y w o r d s :d i g i t a lf o r e s t r y s o aw e bs e r v i c e sf o r e s tr e s o u r c e s 创新性声明 本人声明所呈交的论文是我个人在导师的指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中 不包含他人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或 其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做 的任何贡献均已在论文中做了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:i 丝盘】型1日期2 41 袅:旦f 。f f ) 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。本人保证毕 业离校后,发表论文或使用论文工作成果时署名单位仍然为西安电子科技大学。 学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全 部或部分内容,可以允许采用影印、缩印或其他复制手段保存论文。 本人签名: 导师签名: 羔髓旦 善穗“7 , a 。:。o “t 呜 日期z 口吁口f 。f _ o 第一章绪论 第一章绪论 本章介绍了论文的选题背景,以及国内外当前的研究情况,最后介绍了论文 的主要工作和内容组织。 1 1背景 森林资源是我国自然资源的重要组成部分,是林业生产、经济建设的物质基 础,是人民生活的物资财富。同时林业在国民经济中占有重要地位,它为农业、 工业、商业、教育、军事、交通通讯、环保以及人类生活等提供物资资源和环境 保障资源。 随着国民经济的迅速发展,人们对资源和环境的重视程度越来越高。森林资 源在国民经济持续发展和保持地球生态平衡中起着重要作用,然而森林资源作为 一种生长在地表的多年再生性资源,具有周期长、分布地域广、机构复杂等特点, 极易受到人为因素和自然力的作用而不断发生变化,森林资源的管理需要了解森 林的当前情况,掌握其变化规律从而制定科学的林业管理决策。 强化森林资源经营管理,实现林业的可持续发展,建设生态文明社会,己成 为越来越多国家的共识。当前,世界各国森林资源调查工作的重点正由过去的以 木材资源调查,转向对森林资源、土地退化、森林生态、森林健康、森林生物多 样性和野生动植物,以及森林景观在内的多资源和多功能的森林生态综合调查。 我国森林资源清查主要可分为三类:一是全国森林资源清查,由国务院林业主 管部门组织,以省、自治区、直辖市和大林区为单位进行;二是规划设计调查, 由省级人民政府和林业主管部门负责组织,以县、国有林业局、林场或其他部门 所属林场为单位进行,以满足编制森林经营方案、总体设计和县级林业区划、规 划和基地造林规划等项需要;三是作业设计调查,是林业基层生产单位为满足伐 区设计、造林设计和抚育采伐设计而进行的调查。 传统的资源管理方法周期长、耗费人力物力大,因此采用高新技术来加强森 林资源管理已经成为迫切的需要。森林资源地域性广,层次性强,动态变化快, 反映资源现状的信息量大,内容复杂,数据形式多样。根据这些数据的不同特征, 林业数据的电子输入、电子存储、电子分析已成为各林业局亟待解决的问题。 2 基于s o a 的林业资源管理系统的设计与实现 1 2 研究现状 伴随着科技的发展,信息管理系统的不断普及,林业资源的管理也逐渐进入 了微机管理时代。在9 0 年代初期,计算机刚刚进入林业管理的行列,那时林业管 理的计算化只局限在文档的电子化、公式的电子计算化,海量的数据在手工的基 础上进行一份电子的备份,繁杂的计算公式可以通过简单的表格换算得出一个准 确的数据;渐渐地,随着计算机程序开发的不断普及,也伴随“数字林业 的提 出,林业局的各分支机构开始着手开发自己的信息管理系统。这些信息系统,它 们可能包含不同的开发环境,而且在存储数据的数据库选择方面也各不相同。 在林林总总的系统中,每一种系统都为每一个单独的部门在一定时期内提供 了便捷的工作方式,但是随着计算机的进一步发展,网络技术的普及,这些系统 的弊端逐渐显露出来,下面将从以下几方面进行分析: ( 1 ) 扩展性差。由于当时的开发只是针对某一方面的应用,未考虑以后系统扩 展的需要,面临不断增长的新需求,只有重新开发系统,这样增加了开发的成本, 重用性不强。 ( 2 ) 互操作性差。各系统往往是只在本机构的应用,与其他机构缺乏有效的联 系,无法实现信息的共享,形成一个个信息的孤岛。 ( 3 ) 数据标准不统一。各个机构的系统数据库不同,数据标准不统一,无法 实现信息的有效交换。 1 3 本文工作 本文对林业资源管理的需求进行研究和分析,利用基于s o a 的架构来整合原 有系统和新需求应用并完成了系统实现。主要工作如下: 1 需求分析 综合分析了林业管理系统中的各个流程与需求,并用u m l 图对需求进行描述。 2 总体设计 在需求分析的基础上划分了各个功能模块,并针对原系统的应用,提出基于 s o a 的系统架构,利用w e b 服务来进行组件封装,提高代码的重用性。 3 系统实现 详细阐述了w e b 服务的创建、查找、注册和集成的实现。重点介绍了系统树种 信息服务模块实现和外部接口组件的实现。 4 系统测试 完成系统主要模块功能测试。通过测试结果显示,界面友好,实用性强。 第一章绪论 3 实践表明本系统框架设计层次清晰,扩展性强,具有良好的安全性,易于集 成应用,解决了林业资源管理中的数据交换困难和平台异构等难题,提高了管理 的效率。 1 4 论文结构 按照论述的内容,本文共分为五章,各章主要内容安排如下: 第一章绪论。主要介绍论文的选题背景、现状,本文工作以及内容组织。 第二章s o a 架构概述。介绍了s o a 的概念,技术原理以及w e b 服务的关键技 术。 第三章基于s o a 架构的林业管理系统的设计。在需求的基础上,设计系统的 框架结构和功能模块,并对功能模块进行了说明。 第四章基于s o a 架构的林业管理系统的实现。详细介绍了w r e b 服务的实现过 程,以及统一认证接口,外部调用接口的具体实现过程。 第五章总结与展望。总结已取得的成果,并指出进一步的改进和研究方向 最后为致谢及参考文献。 第二章s o a 架构 5 第二章s o a 架构 本章作为全文的理论基础,重点讲述s o a 的概念、s o a 的体系结构以及如何 利用w e b 服务进行s o a 架构的开发。 2 1s o a 的概念 s o a 是一种架构模型,它可以根据需求通过网络对松散耦合的粗粒度应用组 件进行分布式部署、组合和使用【l 丌。服务层是s o a 的基础,可以直接被应用调用, 从而有效控制系统中与软件代理交互的人为依赖性。 s o a 的关键是“服务”的概念,w 3 c 将服务定义为:“服务提供者完成一组工 作,为服务使用者交付所需的最终结果。最终结果通常会使使用者的状态发生变 化,但也可能使提供者的状态改变,或者双方都产生变化”。 s e r v i c e a r c h i t e c t u r e c o r n 将s o a 定义为:“本质上是服务的集合。服务间彼此 通信,这种通信可能是简单的数据传送,也可能是两个或更多的服务协调进行某 些活动。服务间需要某些方法进行连接。所谓服务就是精确定义、封装完善、独 立于其他服务所处环境和状态的函数。” l o o s e l y c o u p l e d c o r n 将s o a 定义为:“按需连接资源的系统。在s o a 中,资 源被作为可通过标准方式访问的独立服务,提供给网络中的其他成员。与传统的 系统结构相比,s o a 规定了资源间更为灵活的松散耦合关系。” g a r t n e r 则将s o a 描述为:“客户端服务器的软件设计方法,一项应用由软件 服务和软件服务使用者组成s o a 与大多数通用的客户端r i p 务器模型的不同之 处,在于它着重强调软件组件的松散耦合,并使用独立的标准接口。” 虽然不同厂商或个人对s o a 有着不同的理解,但是我们仍然可以从上述的定 义中看到s o a 的几个关键特性:一种粗粒度、松耦合服务架构,服务之间通过简 单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。 面向服务的体系结构是一个组件模型,它将应用程序的不同功能单元( 称为服 务) 通过这些服务之间定义良好的接i = i 和契约联系起来。接1 3 是采用中立的方式进 行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构 建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互1 4 。 这种具有中立的接e l 定义( 没有一强制绑定到特定的实现上) 的特征称为服务 之间的松耦合。松耦合系统的好处有两点,一点是它的灵活性;另一点是,当组 成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,它能够继续存 在。而另一方面,紧耦合意味着应用程序的不同组件之间的接口与其功能和结构 是紧密相连的,因而当需要对部分或整个应用程序进行某种形式的更改时,它们 6 基于s o a 的林业资源管理系统的设计与实现 就显得非常脆弱。 对松耦合的系统的需要来源于业务应用程序需要根据业务的需要变得更加灵 活,以适应不断变化的环境,比如经常改变的政策、业务级别、业务重点、合作 伙伴关系、行业地位以及其他与业务有关的因素,这些因素甚至会影响业务的性 质。能够灵活地适应环境变化的业务称为按需( o nd e m a n d ) 业务,在按需业务中, 一旦需要,就可以对完成或执行任务的方式进行必要的更改。 虽然面向服务的体系结构不是一个新鲜事物,但它却是更传统的面向对象的 模型的替代模型,面向对象的模型是紧耦合的,已经存在二十多年了。虽然基于 s o a 的系统并不排除使用面向对象的设计来构建单个服务,但是其整体设计却是 面向服务的。由于它考虑到了系统内的对象,所以虽然s o a 是基于对象的,但是 作为一个整体,它却不是面向对象的。不同之处在于接口本身。s o a 系统原型的 一个典型例子是通用对象请求代理体系结构( c o m m o no b j e c tr e q u e s t b r o k e r a r c h i t e c t u r e ,c o r b a ) ,它已经出现很长时间了,其定义的概念与s o a 相似。 然而,现在的s o a 已经有所不同了,因为它依赖于一些更新的进展,这些进 展是以可扩展标记语言( e x t e n s i b l em a r k u pl a n g u a g e ,x m l ) 为基础的。通过使用基 于x m l 的语言一w e b 服务描述语言( w e bs e r v i c e sd e f i n i t i o nl a n g u a g e ,w s d l ) 来 描述接口,服务已经转到更动态且更灵活的接口系统中,非以前c o r b a 中的接 口描述语言( i n t e r f a c ed e f i n i t i o nl a n g u a g e ,i d l ) 可比了。各种服务消费者可以采用 一致的w e b 服务来获得服务。基于s o a 不仅能够快速的整合原有软件来满足现在 的业务需要,而且为以后应对随需而变的业务、迅速而正确地开发未来的软件成 为可能。运用s o a 的过程,就是一个业务整合的过程。运用s o a 的一套模式、 方法来定义出具有适当颗粒度的松耦合服务,并为它们设计良好的接口,以达到 这个服务的最大复用性,从而整合整个业务流程。其中最关键的是耦合度、颗粒 度以及接口。 s o a 最大的目的在于整合异构系统。当前很多企业一方面面临着减少成本和 最人化利用现有资源的挑战,另一方面又必须不断提高对客户的服务、提高竞争 力。企业有不同的系统、应用,在使用不同的架构采用不同的技术,并且产品口 能有很多合作伙伴、跨不同的平台。经常出现了流程无法互通、信息无法共享、 软件无法复用的问题。比如一个企业原来一部分应用是p b 实现的,另一部分是由 j a v a 实现的,现在收购了一家公司其业务是由微软的技术实现的,而现在需要整 合所有的业务。如果重新开发所有的软件,无论在资源还是时间上都是不可能的, 而应用s o a 架构,以服务为导向,利用现有资产,改变单纯模拟业务流程的方法 问题就迎刃而解了。s o a 以服务为核心,它把各种应用分解为软件服务模块,这 些服务模块被统一整合到一起,如果有新的需求只需将相关模块重新组合就能使 用,或者再添加相应服务模块,也可以将一些服务模块外包或外购,而无需重建。 第二章s o a 架构 7 这样无论需求如何变化,软件应用都能随需而变。 2 2s o a 的基本特征 s o a 可以解决软件领域一直以来存在的问题:如何重用软件功能。而s o a 的 五大基本特征提供了软件重用能力【5 1 。 s o a 有五大基本特征是: 独立的功能实体 s o a 非常强调架构中提供服务的功能实体的完全独立自主的能力。传统的组 件技术,如n e tr e m o t i n g ,e j b ,c o m 或者c o r b a ,都需要一个宿主( h o s t 或者 s e r v e r ) 来存放和管理这些功能实体,当这些宿主运行结束时这些组件的寿命也随 之结束。这样当宿主本身或者其它功能部分出现问题的时候,在该宿主运行的其 它应用服务就会受到影响。 s o a 架构也非常强调实体自我管理和恢复能力。常见的用来进行自我恢复的 技术,比如事务处理( t r a n s a c t i o n ) ,消息队y u ( ( m e s s a g eq u e u e ) ,冗余部署( r e d u n d a n t d e p l o y m e n t ) 和集群系统( c l u s t e r ) 在s o a 中都起到至关重要的作用。 支持互操作 互操作( i n t e r o p e r a b i l i t y ) 是s o a 的基本特征之一。服务提供者将通过w s d l 开 发可操作的接口,然后在接收s o a p 请求( 不用关心从哪里来的请求) 之后,由服务 端程序完成请求的处理,最后再以s o a p 协议返回给服务消费者。s o a 的参与各 方通过s o a p 协议提供基于文本的r p c 完成互相操作。 一 松散耦合 松耦合系统的好处有两点,首先是具有灵活性,其次是当组成整个应用程序 的服务内部结构和实现逐渐地发生改变时,系统能够继续存在。而紧耦合系统意 味着应用程序的不同组件之间的接口与其功能和结构是紧密相连的,因而当需要 对部分或整个应用程序进行某种形式的更改时,它们就显得非常脆弱。 位置透明 服务消费者通过服务注册中心查找到需要的服务后,通过w s d l 即可与服务 提供者进行沟通。所有的服务提供者的信息都在w s d l 的描述中,因此对于服务 使用者,在消费服务时,并不需要知道服务提供者的口地址或者是其它的位置信 息,它只需要查询服务注册中心,然后动态的按照w s d l 所描述的方法调用服务 所提供的方法就可以了。 基于模块( 或组件) 的模型 在s o a 框架下,提供可组合性的最小单元是模块。整个应用就是由很多个模 块组成。应用的组成可以用图2 1 来描述: 8 基于s o a 的林业资源管理系统的设计与实现 图2 1 应用一服务一模块关系图 图2 1 描述了三种服务的组成方式。根据业务的要求,模块之间的组合可能有 各种方式,例如聚合式、顺序式、分支式等。 构建应用的过程不再是直接去编写j a v a 代码或者c 代码,而是要经过模块一 服务一应用的多层抽象。这样的结构提供了良好的模块性,从而使得构建应用的 过程变成了根据业务流程对模块进行组合的过程。 2 3s o a 的体系结构 s o a 的体系结构提供了一种方法,通过这种方法,可以构建分布式系统来将 应用程序功能作为服务提供给终端用户。其组成元素可以分成功能元素和服务质 量元素。图2 2 展示了s o a 体系结构堆栈以及在一个而向服务的体系结构可能观 察到的元素。 s o a 堆栈分成两半,左边的一半集中于体系结构的功能性方面,而右边的一 半集中于体系结构的服务质量方面【7 】。这些元素详细描述如下: 功能性方而包括: 传输是一种机制,用于将来自服务使用者的服务请求传送给服务提供者, 并且将来自服务提供者的响应传送给服务使用者。 服务通信协议是一种经过协商的机制,通过这种机制,服务提供者和服务 使用者可以就将要请求的内容和将要返回的内容进行沟通。 服务描述是一种经过协商的模式,用于描述服务是什么、应该如何调用服 务以及成功地调用服务需要什么数据。 第二章s o a 架构 9 图2 2s o a 体系结构元素 服务描述实际可供使用的服务。 业务流程是一个服务的集合,可以按照特定的顺序并使用一组特定的规则 进行调用,以满足业务要求。注意,可以将业务流程本身看作是服务,这样就产 生了业务流程可以由不同粒度的服务组成的观念。:, 服务注册中心是一个服务和数据描述的存储库,服务提供者可以通过服务 注册中心发布它们的服务,而服务使用者可以通过服务注册中心发现或查找可用 的服务。服务注册中心可以给需要集中式存储库的服务提供其他的功能。 服务质量方而包括: 策略是一组条件和规则,在这些条件和规则之下,服务提供者可以使服务 可用于使用者。策略既有功能性方面,也有与服务质量有关的方面;因此,我们 在功能和服务质量两个区中都有策略功能。 安全性是规则集,可以应用于调用服务的服务使用者的身份验证、授权和 访问控制。 传输是属性集,可以应用于一组服务,以提供一致的结果。例如,如果要 使用一组服务来完成一项业务功能,则所有的服务必须都完成,或者没有一个完 成。 管理是属性集,可以应用于管理提供的服务或使用的服务。 1 0 基于s o a 的林业资源管理系统的设计与实现 2 4w e b 服务 从s o a 的架构和定义来看,并没有完全要求用某种特定的技术去实现【3 】,只 要能够将应用逻辑包装成服务再发布出去,并且可以被其他主机所访问。目前己 经存在的各种应用技术和标准协议都能够实现,但是从目前研究s o a 应用的几大 软件厂商共同协商的标准来看,w e b 服务技术无疑是最方便的。 在理解s o a 和w e b 服务的关系上,经常发生混淆。w e b 服务是技术规范,而 s o a 是设计原则。特别是w e b 服务中的w s d l ,是一个s o a 配套的接1 2 1 定义标准, 这是w e b 服务和s o a 的根本联系。从本质上来说,s o a 是一种架构模式,而w r e b 服务是利用一组标准实现的服务,w e b 服务是实现s o a 的方式之一。用w e b 服务 来实现s o a 的好处是可以实现一个中立平台来获得服务,而且随着越来越多的软 件商支持越来越多的w r e b 服务规范,会取得更好的通用性。虽然s o a 中的服务不 一定就是w e b 服务,但是w e b 服务到目前为止是实现s o a 最成功,最流行的形 式。 w e b 服务是松散耦合的【l 】,可复用的软件模块,它封装了离散的功能,在 i n t e r n e t 上发布后能够通过标准的i n t e m e t 协议在程序中访问。它的设计目的就是 为了能够在i n t e m e t 上不同的操作系统,硬件平台和编程语言之间集成应用软件, 充分的利用现有的w e b 技术,因此具有以下特征:松散的耦合、普遍的通信、统 一的数据格式。 w e b 服务使用“发现( d i s c o v e r y ) 机制来定位服务( 实现松散耦合) ,使用服务 说明来定义如何使用服务( 实现普遍的通信) ,使用标准的传送格式进行通信( 实现 统一的数据格式) 。图2 3 表示了w e b 服务的基本结构以及客户和w e b 服务是如何 使用这些技术进行交互的。 w e b 服务是通过一系列标准和协议来保证程序之间的动态连接。其中最基本 的协议包括:x m l ,s o a p ,w s d l ,u d d i 。 x m l x m l 1 0 ( 可扩展标记语言,e x t e n s i b l em a r k u pl a n g u a g e ) 标准是一个基于文本 的w o r l dw i d ew e b 组织( w 3 c ) 规范的标记语言【l0 1 。与h t m l 使用标签来描述外观 和数据不同,x m l 严格地定义了可移植的结构化数据。它可以作为定义数据描述 语言的语言,如标记语法或词汇、交换格式和通信协议。 s o a p 简单对象访问协议( s i m p l eo b j e c ta c c e s sp r o t o c 0 1 ) 是一个基于x m l 的,用于在 分布式环境下交换信息的轻量级协议,它规定了w e bs e r v i c e s 之间是怎样传递信 息的。简单的说,s o a p 规定了: 第二章s o a 架构 图2 3w e b 服务基本结构及交互过程 1 传递信息的格式为x m l 。这就使w e bs e r v i c e s 能够在任何平台上,用任何 语言进行实现。 2 远程对象方法调用的格式。规定了怎样表示被调用对象以及调用的方法名 称和参数类型等。 3 参数类型和x m l 格式之间的映射。这是因为,被调用的方法有时候需要 传递一个复杂的参数,例如,一个p e r s o n 对象。怎样用x m l 来表示一个对象参 数,也是s o a p 所定义的范围。 4 异常处理以及其他的相关信息。 s o a p 在请求者和提供者对象之间定义了一个通信协议,这样,在面向对象编 程流行的环境中,该请求对象可以在提供的对象上执行远程方法调用。因为s o a p 是平台无关和厂商无关的标准,因此尽管s o a 并不必须使用s o a p ,但在带有单 独i t 基础架构的合作伙伴之间的松耦合互操作中,s o a p 仍然是支持服务调用的 最好方法。 w 3 cs o a p1 2 规范在服务请求者和服务提供者之间定义使用x m l 格式的消 息进行通信。将应用程序请求( 在x m l 中) 放入s o a p 信封中( 也是x m l ) ,并从请 1 2 基于s o a 的林业资源管理系统的设计与实现 求者到提供者发送应用程序请求,提供者发回的响应也采用相同的形式。最近 s o a p 被称为而向服务的架构协议( s e r v i c e s o r i e n t e da r c h i t e c t u r ep r o t o c 0 1 ) 。s o a p 的优点在于它完全和厂商无关,相对于平台、操作系统、目标模型和编程语言可 以独立实现。另外,传输和语言绑定以及数据编码的参数选择都是由实现决定的。 w s d l w e b 服务描述语言w s d l ( w e bs e r v i c e sd e s c r i p t i o nl a n g u a g e ) 是一个提供描 述服务i d l 标准方法的x m l 词汇,是w e bs e r v i c e s 的定义语言。当实现了某种服 务的时候,为了让别的程序调用,必须说明服务的接口。例如,服务名称、服务 所在的机器名称、监听端口号、传递参数的类型、个数和顺序、返回结果的类型 等等,这样别的应用程序才能调用你的服务。w s d l 协议就是规定了有关w e b s e r v i c e s 描述的标准w e b 服务描述语言( w s d l ) 规范定义了一个x m l 词汇表,该 词汇表依照请求和响应消息,在服务请求者和服务提供者之间定义了一种契约。 我们能够将w e b 服务定义为软件,这个软件通过描述s o a p 消息接口的w s d l 文 档来提供可重用的应用程序功能,并使用标准的传输协议来进行传递。 w s d l 描述包含必要的细节,以便服务请求者能够使用特定服务: 请求消息格式 响应消息格式 向何处发送消息 w s d l 是基于x m l 的,因此w s d l 文档是计算机可读的( m a c h i n e r e a d a b l e ) 。 这样开发环境使用w s d l 将集成服务的流程自动处理到请求者应用程序。例 如w e b s p h e r es t u d i o 产生一个j a v a 的代理对象,它能够像本地对象一样实现服务, 但是实际上代理对象仅仅处理请求的创建和响应消息的解析。不管服务是否用 j a v a 、c 拌或者其他的语言实现,生成的j a v a 代理对象都能够从w s d l 描述中调用 任何的w e b 服务。实际上,w s d l 不能像编程语言那样描述实现细节。 u d d i 统一描述、发现和集成( u n i v e r s a ld e s c r i p t i o n ,d i s c o v e r ya n di n t e g r a t i o n ) 规范提 供了一组公用的s o a pa p i ,使得服务代理得以实现。简单说,u d d i 用于集中存 放和查找w s d l 描述文件,起着目录服务器的作用。u d d i 为发布服务的可用性 和发现所需服务定义了一个标准接口( 基于s o a p 消息) 。u d d i 实现将发布和发现 服务的s o a p 请求解释为用于基木数据存储的数据管理功能调用。 为了发布和发现其他s o a 服务,u d d i 通过定义标准的s o a p 消息来实现服 务注册( s e r v i c er e g i s t r y ) 。注册是一种服务代理,它是在u d d i 上需要发现服务的 请求者和发布服务的提供者之间的中介【1 1 1 。一旦请求者决定使用特定的服务,开 发者通常借助于开发工具并通过创建以发送请求并处理响应的方式访问服务的代 第二章s o a 架构 1 3 码来绑定服务。s o a 不需要使用u d d i ,但由于u d d i 是建立在s o a 上来完成自 身工作的,所以u d d i 是服务发现的一个好的解决方案。 图2 4w e b 服务角色交互图 如图2 4 所示,一个w e b 服务的生命周期是: 1 实现一个w e b 服务,使其能够接受和响应s o a p 消息。 2 撰写一个w s d l 文件用于描述此w e b 服务。 3 将此w s d l 发布到u d d i 上。 4 其他的应用程序( 客户端) 从u d d i 上搜索到w s d l 。 5 根据你的w s d l ,客户端可以编写程序调用w e b 服务。 2 5小结 本章介绍了s o a 的相关概念、技术特点及其体系结构,同时对应用支撑平台 实现的关键技术叫e b 服务技术做出了详细的阐述和研究,并对w e b 服务的技术 基础可扩展标记语言、简单对象访问协议、w e b 服务描述语言、统一描述、发 现和集成语言进行了较深入地探讨。 第三章基于s o a 架构的林业管理系统的设计 1 5 第三章基于s o a 架构的林业管理系统的设计 本章首先从林业系统的需求入手,在系统需求分析的基础上,基于s o a 架构 特点进行系统整体架构、系统功能、数据库设计。 3 1 1 应用背景 3 1 需求分析 森林资源是我国自然资源的重要组成部分,是林业生产、经济建设的物质基 础,是人民生活的物资财富。同时林业在国民经济中占有重要地位,它为农业、 工业、商业、教育、军事、交通通讯、环保以及人类生活等提供物资资源和环境 保障资源。 随着国民经济的迅速发展,人们对资源和环境的重视程度越来越高。森林资 源在国民经济持续发展和保持地球生态平衡中起着重要作用,然而森林资源作为 一种生长在地表的多年再生性资源,具有周期长、分布地域广、机构复杂等特点, 极易受到人为因素和自然力的作用而不断发生变化,森林资源的管理需要了解森 林的当前情况,掌握其变化规律从而制定科学的林业管理决策。 传统的资源管理方法周期长、耗费人力物力大,因此采用高新技术来加强森 林资源管理已经成为迫切的需要。森林资源地域性广,层次性强,动态变化快, 反映资源现状的信息量大,内容复杂,数据形式多样。根据这些数据的不同特征, 林业数据的电子输入、电子存储、电子分析已成为各林业局亟待解决的问题。 随着计算机程序开发的不断普及,也伴随“数字林业 的提出,林业局的各 分支机构开始着手开发自己的信息管理系统。这些信息系统,它们可能包含不同 的开发环境,而且在存储数据的数据库选择方面也各不相同。 在林林总总的系统中,每一种系统都为每一个单独的部门在一定时期内提供 了便捷的工作方式,但是随着计算机的进一步发展,网络技术的普及,这些系统 的弊端逐渐显露出来: ( 1 ) 扩展性差。由于当时的开发只是针对某一方面的应用,未考虑以后系统扩 展的需要,面临不断增长的新需求,只有重新开发系统,这样增加了开发的成本, 重用性不强。 ( 2 ) 互操作性差。各系统往往是只在本机构的应用,与其他机构缺乏有效的联 系,无法实现信息的共享,形成一个个信息的孤岛。 ( 3 ) 数据标准不统一。各个机构的系统数据库不同,数据标准不统一,无法实 1 6 基于s o a 的林业资源管理系统的设计与实现 现信息的有效交换。 3 1 2 需求调查 通过调查分析,市级林业管理平台业务需求有以下几点实现目标: ( 1 ) 作为市一级的林业系统,一方面要从各林业监测点获取数据,另一方面 又要把各种数据进行加工,处理,汇总向上级的部门进行报告。其核心环节是数 据的发送与接收。因为数据量大,手工处理效率低下并且准确性得不到保障,所 以需要实现海量数据的快速,准确的传输与交互。 ( 2 ) 对于单位内的办公管理包括人事、财务信息进行管理维护,完成与财政 主管部门的信息交互。 ( 3 ) 针对原有系统,实现尽可能的重用,实现系统的信息共享与互操作,构 建统一的认证平台。既要最大限度的保护已有的投资,保证原有系统的正常运行, 又要满足数字林业平台的统一信息资源的要求,需要通过本系统的设计满足需要。 分析市局林业管理的主要业务流程如图3 1 所示。 系晓哟弼程 释 鞫发蝴按懒 聚 卜 | |憾 按燃 彳笔堡一名| 姐 且 , 4| 分獭 划蹴 n 矿 ( - - | 发园霸娥蹭 制定隆删 | 剐 扭 熙 嶷 爿 嚣 请捐怨蝴 4 | | 螺 盎 1 谣 爿 撇粼h 髅 嚣 嶷 , l 箍 轴揪矿 + h 完觥l 餐 盏 图3 1 业务流程图 第三章基于s o a 架构的林业管理系统的设计 仃 需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个 阶段的设计,并影响到设计结果是否合理和实用。根据对系统的调查分析,确定 了系统的详细需求方案。 分析以上几点目标,得到系统的详细需求如下: 1 数据上报,按照上级部门制定的格式发送数据报告。 2 数据汇总,针对监测点上报的信息,进行汇总处理。 3 数据分析,对于存储的信息进行分析处理,为决策做参考。 4 报表生成,对于各种处理的数据实现以特定格式的输出。 5 人事管理,包括对于人事的信息保存,更改,人事的考核等。 6 财务管理,包括各部门的经费划拨,支出信息,工资信息等。 7 权限认证,对平台用户的信息进行认证,划分权限。 8 办公管理,包括项目的审批,上报,信息的发布等。 3 1 3 建模分析 使用u m l 建模语言描述需求如图3 2 3 7 所示。 1 权限管理用例图 2 办公管理 图3 2 权限管理用例图 。 平台用户 办公管理 、,弋 图3 3 办公管理用例图 心 1 8 基于s o a 的林业资源管理系统的设计与实现 3 财务管理 4 人事管理 税费支出管理 图3 4 财务管理用例图 5 资源信息管理 人员考核管理 图3 5 办公管理用例图 ( 一、q i i u 由y 矿资源汇总统计, ,7 、一 早一 :孟( 歹场能帆。 - s i z 钢p 黼蝴管念絮竺一、。 ( 、一,) j t : 图3 6 资源信息管理用例图 第三章基于s o a 架构的林业管理系统的设计 1 9 6 功能接口 ,:!:!考、:;兰、 q 二乡j q、盔 武、二)吴 := 表上级信息帆。 、, 、 f 图3 7 功能接口用例图 3 2 总体设计 以市为单位建设起的数字林业管理平台,实现林业资源信息的数字化、网络 化管理以及各级部门之间的信息共享。实现本系统与各监测点、上级信息中心、 财政主管部门的应用集成,能够及时保证各相关系统的相关数据的一致性,而且 方便用户的操作。由于经济发展或是其他因素的改变,要求有良好的可扩展性, 方便升级、维护和部署。 3 2 1 设计目标 现有的信息处理业务模式客观上还存在一些难点:一是数据量大,处理时间 集中;二是信息条块分割,数据不统一,传送不及时。各部门之间,财政、上级 主管部门都有各自较完善的信息处理系统,数据库系统各异。 因此,必须大胆引进和应用新技术,在充分保护部门间现有信息网络和数据 资源的基础上,建立全心的能支撑新管理体制的业务信息处理新模式。其设计和 实现的目标是: 1 实现松耦合集成各部门的系统,形成一个统一的数字管理平台。 2 实现系统内数据的有效共享和功能模块间的互操作。 3 易于扩展,根据需求变化只需要在原平台上开发新的组件或者在原有组件 的基础上修改,实现最大化的重用。 4 解决数据的重复输入问题,以统一的格式来完成信息的交换。 2 0 基于s o a 的林业资源管理系统的设计与实现 并科学合理的解决好以下几个主要问题: 1 数据集中与分布 原由的财务、办公、数据传输等业务处理模式和信息管理系统是条块分割, 各自为政,信息不能共享,应用困难。 2 网络的复杂性和行业的特殊性 林业管理的对象的数量大,接入接点比较多,这些单位都需要参与到这个复 杂系统中来,如何尊重和保护各部门现有网络和信息资源,减少建设成本,是关 系到建设的成败。 3 数据和网络安全 一是数据安全:数据集中了,一旦出现问题,影响和损失非常大。所以数据 库的安全和数据集中点的安全防御就变得特别关键,更关键的是,运行的数据都 是涉及到单位、个人隐私的或行业内保密的数据,需要保护数据的安全。二是网 络可靠性:网络互联的规模很大,原来只有自己的行业内部网,现在大家全连在 一起了,要直接访问集中的数据库,对原有的网络、操作系统、数据库都改造或 升级,技术也是有很大的压力,如何引用新技术,科学合理设计网络系统结构, 让这些点能同时接入的多通道的服务,系统的容量要很大,并且可靠性也要很高。 4 信息系统建设规范和标准 从应用的角度分析,必须面向林业管理对象的服务、面向协作部门的决策支 持建立规范和标准。从技术角度分析,系统由原来分布的系统想集中加分布发展, 需采用先进技术统一设计系统的体系结构,面向对象的方法、新的数据交换标准 的建立、越来越严密的安全方案、越来越灵活的满足各种需要接口方案等等。 3 2 2 系统架构图 经过前文的研究和分析,总结出系统的架构要求在已有的现有i t 基础环境和 业务系统上建立一套跨部门、跨业务、跨平台、异构的信息整合平台;整合不同 的部门信息资源,使用统一的规则、技术标准、集成服务,实现流程再造、信息 共享。 基于s o a 的特性可以很好的满足以上要求,系统引用s o a 架构设计思想,将 原有系统封装为w e b 服务,彼此之间通过服务接口提供调用,实现了部门间的互 操作;当有新的需求或者需求变更的时候,只需要重新把模块根据粒度大小封装 为服务或者组件,实现了系统的扩展和重用;规划设计统一数据交换接口标准, 采用x s d 大纲设计的x m l 文件作为数据交换的中介,实现了数据的共享;采用数 据集中加分布管理模式,实现数据的安全,快捷访问。 本系统采用五层结构,架构如图3 8 所示。 第三章基于s o a 架构的林业管理系统的设计 2 1 图3 8 系统架构图 1 用户表示层,提供给用户操作的界面,系统内部用户通过此层访问系统, 而财政主管部门、下级监测点和上级信息中心,使用系统提供的接口,通过 h t t p h t t p s 协议访问。 2 w e b 服

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论