机场应急救援系统软件架构设计
<P>机场应急救援系统软件架构设计</P><P>**** Hidden Message *****</P> 第29卷 第12期 武汉理工大学学报·信息与管理工程版 Vol. 29 No. 12<BR>2007年12月 JOURNAL OFWUT ( INFORMATION &MANAGEMENT ENGINEER ING) Dec. 2007<BR>文章编号: 1007 - 144X (2007) 12 - 0085 - 03<BR>收稿日期: 2007 - 06 - 20.<BR>作者简介:朱新平(1983 - ) ,男,湖南常德人,南京航天航空大学民航学院硕士研究生.<BR>基金项目:国家自然科学基金委员会与中国民用航空总局联合资助项目(60776813) .<BR>机场应急救援系统软件架构设计<BR>朱新平1 ,韩松臣1 ,汪东生2<BR>(1. 南京航空航天大学民航学院,江苏南京210016; 2. 武汉理工大学信息工程学院,湖北武汉430070)<BR>摘 要:传统的机场应急救援开展方式暴露出很多缺陷,如何利用计算机信息化技术提高机场应急救援工作<BR>的效率,减少突发事件对机场正常运营的影响,降低救援成本具有重要的实际意义。基于J2EE体系结构,提<BR>出了集成Struts和Hibernate框架的机场应急救援系统架构模型,并对系统功能模块划分和具体的业务流程进<BR>行了分析。<BR>关键词:机场应急救援; MVC; Struts; Hibernate<BR>中图法分类号: TP315 文献标志码:A<BR> 机场应急救援是民航航空安全系统的重要组<BR>成部分,是航空安全的基本保障。建立有效的机<BR>场应急救援系统,在事故发生的情况下,做好应急<BR>救援工作,果断处置各种紧急事件,避免、减少人<BR>员伤亡和财产损失,减少对机场正常运营带来的<BR>影响具有重要意义。国内关于机场应急救援系统<BR>的研究还不多。迟文学等人基于GIS (地理信息<BR>系统)建立了一套机场应急救援与辅助决策支持<BR>系统,并对相关技术要点进行了阐述。徐忠明[ 1 ]<BR>提出建立以数字集群通信系统为核心的机场应急<BR>联动系统。罗帆[ 2 ]等在问卷调查研究的基础上,<BR>对机场灾害预警管理的工作内容进行了阐述。<BR>当前,计算机、网络信息化技术已经渗透和应<BR>用到各个领域,但在机场应急救援方面的应用仍<BR>很落后,机场各单位应急处理系统各自独立,信息<BR>共享范围有限,形成了一个个“信息孤岛”,难以<BR>应付机场紧急和突发事件的发生,这对机场的应<BR>急救援工作是一个很大的缺陷。Internet/ Intranet<BR>的普及,基于J2EE的Web技术迅猛发展,各种框<BR>架技术的不断成熟为建立机场应急救援系统提供<BR>了有力的支持。因此,基于J2EE体系结构,提出<BR>了集成Struts和Hibernate框架的机场应急救援<BR>系统架构模型,并对系统逻辑结构、功能模块划分<BR>和具体的业务流程进行了分析。<BR>1 Struts框架与M VC模式<BR>Struts是在Jakarta项目下开发的开放源码软<BR>件,是基于Model2设计模式的Web应用开发框<BR>架。Model2 设计模式是模型- 视图- 控制器<BR>(model - view - controller,MVC)模式的一种应用。<BR>MVC将应用程序的事务逻辑同数据表示层分离出<BR>来,其中,模型是应用程序的核心,封装了用户数据<BR>和处理数据的业务逻辑,体现了应用程序的当前状<BR>态,而且可以将用户数据状态的变化提供给多个显<BR>示该数据的视图共用;视图提供了用户界面,是用<BR>户和应用程序进行交互的窗口;控制器连接了模型<BR>和视图,根据用户的请求判断将请求交给哪个模型<BR>来完成,并进行处理结果的回传。<BR>Struts框架主要由模型、视图、控制器和XML<BR>文件4 个部分组成。模型通常由Java Bean 或<BR>EJB组件实现,负责处理业务逻辑;视图包括一组<BR>JSP文件,主要由JSP标签或TagLib构成,它简化<BR>了JSP页面的编码工作; 控制器主要是ActionS2<BR>ervlet,但是对于业务逻辑的操作则主要由Action、<BR>ActionMapp ing和ActionForward这3 个组件协调<BR>完成,其中Action是真正的控制逻辑的实现者,<BR>而ActionMapp ing和ActionForward则指定了不同<BR>业务逻辑或流程的运行方向; Struts中主要包括<BR>web. xml和struts - config. xml 2个配置文件,其中<BR>web. xml是Web 应用的发布描述文件, struts -<BR>config. xml是与Struts相关的特殊信息配置的描<BR>述文件。此外, Struts还利用XML 来描述在国际<BR>化应用中的用户提示信息[ 3 ] 。<BR>2 Hiberna te持久层框架<BR>Hibernate是一个优秀的持久层框架,充分体<BR>© 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net<BR> 武汉理工大学学报·信息与管理工程版 2007年12月<BR>现了对象- 关系映射(object - relational mapp ing,<BR>ORM)的设计理念,提供了强大、高性能的对象到<BR>关系型数据库的持久化服务,并已成为ORM领<BR>域事实上的标准[ 4 ] 。<BR>Hibernate可以处理关联、继承、引用、多态和<BR>集合等方式的持久化,对象生命周期和状态的维<BR>护全部在Hibernate内部完成,无需用户关心,也<BR>不需要对Java的业务对象进行增强。它的底层<BR>仍然是关系数据库,通过封装JDBC AP I的方式<BR>提供面向对象的持久化方式,在JDBC支持的场<BR>合都能够使用。在性能方面, Hibernate的编写者<BR>充分使用了JDBC高级功能,使得使用Hibernate<BR>开发的程序的效率超过直接使用JDBC方式。<BR>Hibernate提供面向对象的查询语言HQL,它<BR>类似与SQL,不过采用的是面向对象的语法,功能<BR>上与SQL 基本等同。由于Hibernate 只是JDBC<BR>的高级封装,本身不具备事务处理功能,但它可以<BR>使用JDBC的事务或者JTA事务处理[ 5 ] 。<BR>3 机场应急救援系统设计目的及流程<BR>3. 1 系统的设计目的<BR>该项目的提出者为某机场应急救援组织机<BR>构,其下辖有指挥中心、航务管理部门、消防灭火<BR>组、医疗救护组和公安警戒组等12个部门及协议<BR>救援单位。在长期的应急救援演练中暴露出一系<BR>列的问题,比如,救援过程中整体协作能力不强,<BR>工作效率不高;救援过程中指挥人员对各部门可<BR>调用资源相关信息不清楚,导致决策失误时有发<BR>生;救援工作结束后,事件评估和经验总结主要依<BR>据工作过程中的语音记录,评估方式单一,评估效<BR>果不佳。<BR>该系统的设计目标是通过与该组织机构的合<BR>作,充分听取指挥中心和各个救援小组,以及机<BR>场、航空公司的需求,提出适合实际救援的机场应<BR>急救援系统架构,整合各救援单位的救援资源信<BR>息,消除“信息孤岛”,促使各救援单位形成合力,<BR>提高救援工作效率。<BR>3. 2 系统的逻辑结构<BR>系统基于B /S (浏览器/服务器)模式,由服<BR>务器和客户端组成。各救援小组负责人可以通过<BR>IE浏览器登录系统,执行指挥中心传达的各种命<BR>令,调度本小组救援资源。系统逻辑结构图如图<BR>1所示。<BR>图1 系统逻辑结构图<BR>3. 3 系统的功能模块<BR>根据机场应急救援工作的实际需求,机场应<BR>急救援系统主要功能模块划分如图2所示。<BR>图2 机场应急救援系统功能模块划分示意图<BR>系统包括: ①报警模块,用于事故报警,负责将<BR>事故信息通知救援小组成员; ②辅助决策模块,是<BR>整个系统的核心,包括事故种类决策模块、救援预<BR>案生成模块、救援力量调度模块,主要协助指挥人<BR>员完成事故种类的决策、应急救援预案的生成、救<BR>援资源调度方案决策; ③日常维护模块,主要完成<BR>救援资源信息、救援单位信息以及个人信息的日常<BR>维护; ④回放模块,用于将以往救援案例记录进行<BR>回放,以便讲评;此外,还有其他外围功能模块。<BR>3. 4 系统的总体架构<BR>通过对各种解决方案和框架结构的比较,选<BR>择Java技术作为系统开发的应用技术。<BR>该系统的辅助决策、日常资源管理、救援历史<BR>回放等几大模块相对独立,但都很复杂,涉及到大<BR>量的数据处理与复杂的业务流程,因此集成的<BR>Struts与Hibernate 架构刚好适合于开发这个系<BR>统,而且能够很好地节约开发时间和开发成本。<BR>集成Struts和Hibernate 框架的机场应急救<BR>援系统总体架构如图3所示。<BR>86<BR>© 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net<BR>第29卷 第12期 朱新平,等:机场应急救援系统软件架构设计 <BR>图3 机场应急救援系统总体架构示意图<BR>该统采用客户浏览器/应用服务器/数据库架<BR>构模式,前台表示层使用JSP技术通过浏览器实<BR>现;中间层(Web层+业务层)使用Struts框架和<BR>Java Bean、EJB等技术来实现,以满足业务需要;<BR>持久层通过Hibernate框架提供对数据库的操作<BR>支持;后台数据库使用SQL Server 2000 数据库,<BR>并根据系统相应功能模块分成决策规则库、救援<BR>预案库、救援资源数据库、救援历史记录数据库分<BR>别设计。<BR>该系统具有如下优点:<BR>(1)合理划分各层的功能,降低层与层之间<BR>的耦合,从而使得整个系统在逻辑结构上更为清<BR>晰,提高了系统的可维护性和可扩展性。<BR>(2)Web层的开发和维护更为方便。传统的<BR>Web层开发中基本上都是将逻辑处理、数据处理<BR>和页面显示等大部分功能放在JSP页面上,但是<BR>在机场应急救援系统的Web层开发中采用MVC<BR>设计模式,从根本上强制性地将它们分开。它把<BR>应用程序分成3个部分:模型、视图和控制器,并<BR>采用主流的Struts框架技术来实现各个部分,它<BR>们相互协作,完成不同的任务。由于所有的页面<BR>跳转都集中在XML配置文件中定义,因此提高了<BR>程序的可读性和可维护性。<BR>(3)先进的持久层实现技术提高了系统的移<BR>植性。运用MVC模式的Struts框架虽然在总体<BR>上实现了对逻辑、显示和控制的分离,但是它没有<BR>提供对复杂的持久层的支持,也就是说当数据要<BR>存入数据库时Struts没有做相应的处理。还是与<BR>传统的开发一样,要通过JDBC、EJB 与数据库交<BR>互。鉴于此, 该系统采用Hibernate, 可以弥补<BR>Struts框架在持久层操作中的不足,它对数据库操<BR>作的大多数技术细节进行了封装,经过Hibernate<BR>的O /R映射( object - relational mapp ing)的配置<BR>文件就可以将数据库表与持久层对象对应起来,<BR>完全符合Java中面向对象的开发思想。而且,由<BR>于Hibernate对不同的数据库都有良好的支持,只<BR>需简单修改Hibernate 中的配置文件hibernate.<BR>cfg. xml就可以实现底层数据库的切换,提高了系<BR>统的移植性。<BR>3. 5 基本业务流程<BR>在表示层运行的浏览器中,通过JSP页面实<BR>现交互,传送请求和接受响应。Web层中的Struts<BR>通过ActionServlet接收请求,并将请求交给Re2<BR>quest - Processor来处理。Request - Processor根<BR>据请求的URL从ActionMapp ing中得到与之相对<BR>应的Action,并根据请求的参数实例化响应中的<BR>ActionForm,再经过Form 验证。业务层负责向<BR>Action提供业务模型组件和该组件的协作对象数<BR>据处理(DAO)组件来完成相关的业务逻辑,并提<BR>供事务处理、缓冲池等容器组件提升系统性能和<BR>保证数据完整。在持久层中,依赖Hibernate的对<BR>象化映射和数据库交互来处理DAO组件请求的<BR>数据,并返回处理结果。<BR>4 结 论<BR>首先介绍了机场应急救援系统的研究现状。<BR>其次介绍了MVC模式的Struts框架技术和Hiber2<BR>nate持久层技术。最后介绍了开发的机场应急救<BR>援系统的基本情况,并对Struts和Hibernate框架<BR>的使用思路作了详细的描述,证明结合使用这2<BR>个框架能够提高系统的开发效率,提升系统的性<BR>能,使得开发的系统在质量上有质的飞跃。<BR>参考文献:<BR>[ 1 ] 徐忠明. 民航机场应急联动系统技术实现方案[ J ].<BR>计算机工程, 2005 (4) : 70 - 73.<BR>[ 2 ] 罗 帆,佘 廉,平 芸. 民航机场灾害预警管理系<BR>统探讨[ J ]. 武汉理工大学学报: 信息与管理工程<BR>版, 2002, 24 (6) : 41 - 44.<BR>[ 3 ] 曹广鑫,王谢华. Struts数据库项目开发宝典.<BR>北京,电子工业出版社, 2005.<BR>[ 4 ] 胡小丹,魏长军. 基于Struts + Sp ring + Hibernate架<BR>构的能源管理系统的研究[ J ]. 计算机与现代化,<BR>2006 (12) : 25 - 30.<BR>[ 5 ] 徐长盛,戴 超,谢 立. J2EE数据持久化技术的<BR>研究[ J ]. 计算机应用与软件, 2006, 23 (4) : 56 - 57.<BR>(下转第91页)<BR>87<BR>© 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net<BR>第29卷 第12期 王少龙,等:嵌入式USB主机接口的设计与实现 <BR>ded USB host/ slave controller datasheet [ EB /OL ].<BR>[ 2007 - 06 - 26 ]. http: / /www. 21 icsearch. low /<BR>searchpdf /defauct. asp? admin = 2002.<BR>[ 2 ] 肖踞雄, 翁铁成, 宋中庆. USB 技术及应用设计<BR>. 北京:清华大学出版社, 2003.<BR>[ 3 ] 王 涛,李 星,李秉肇. USB主控芯片SL811HS的<BR>固件程序设计[ J ]. 电子设计应用, 2004 ( 1) : 63 -<BR>70.<BR>[ 4 ] 马 伟. 计算机USB 系统原理与其主/从机设计<BR>. 北京:北京航空航天大学出版社, 2004.<BR>[ 5 ] AXELSON J. USB大全. 陈 逸,译. 北京:中国<BR>电力出版社, 2001.<BR>[ 6 ] 郑 智. 嵌入式L inux F USB驱动科学试验开发研<BR>究[ J ]. 武汉理工大学学报: 信息与管理工程版,<BR>2006, 28 (7) : 117 - 120.<BR>Design and Rea liza tion of Embedded USB Host In terface<BR>WANG Shaolong, XU Cheng<BR>Abstract:A method adop ting a single - chip computer to control the USB interface chip SL811HS to realize an<BR>embedded USB host was introduced due to the limitation that the existing USB device fails to work without a<BR>PC. This system is composed of anMCU - USB host controller and a high - speed dual - port RAM. The p rin2<BR>cip le of the system was analyzed. The system structure of hardware designing and the host software were also<BR>p resented.<BR>Key words:USB host; SL811HS; host controller driver<BR>WANG Shaolong: Postgraduate; School of Information Engineering,WUT,Wuhan 430070, China.<BR>[编辑:李道文]<BR>(上接第87页)<BR>Design on the A irport Emergency Rescue System<BR>Integra ted Struts and Hiberna te Architecture<BR>ZHU X inping, HAN Songchen,WANG Dongsheng<BR>Abstract: There are some p roblems in traditional emergency rescue app roaches in airports. How to imp rove the<BR>efficiency of emergency rescue work and lower the cost of rescue bymeans of computer information technology<BR>is of great significance for the management of airports. Based on the J2EE architecture, an integrated Airport E2<BR>mergency Rescue System (AERS) combining Struts and Hibernate architecture was put forward. The classifica2<BR>tion of the system function models and specific work p rogram were also analyzed.<BR>Key words: emergency rescue in airport; MVC; Struts; Hibernate<BR>ZHU Xinp ing: Postgraduate; College of Civil Aviation,NUAA,Nanjing 210016, China.<BR>[编辑:李道文]<BR>91<BR>© 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 学习学习:loveliness: :loveliness: 感谢分享,好资料值得学习。 gtgrtrytyuyuiyiuioyuoyuo
页:
[1]