




已阅读5页,还剩68页未读, 继续免费阅读
(计算机应用技术专业论文)基于J2EE多层架构的医疗诊断系统开发与研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要 随着因特网业务量的不断壮大,网络宽带化已成为建设信息高速公路的重 点。宽带城域网的建设为远程医疗提供了高速的业务平台,而w e b 技术无疑已 经占据信息平台的主导地位。我们应用w e b 开发技术设计了一种基于宽带的远 程诊断系统。计算机技术和网络技术的飞速发展给构建高质量的r e m o t e t e l e m e d i c i n es y s t e m 提供了可靠的保证。 论文的主要工作包括: ( 1 ) 介绍j 2 e e 架构的特点,阐述j 2 e e 框架的四层结构:客户层、w e b 层、业 务层和企业信息系统层,以及这四层之间的关系。 ( 2 ) 介绍统一建模语言一u m l 的特点、架构和主要内容。标准建模语言u m l 适用于以面向对象技术来描述任何类型的系统,而且适用于系统开发的不同 阶段,从需求规格描述直至系统完成后的测试和维护。 ( 3 ) 讨论e c h o 框架的技术概念和优势。e c h o 框架包括组件框架和应用程序容器 两层结构。e c h o 是用来发展w e b 应用的强大软件框架,基于页面的技术被 用来创建站点中内容丰富的部分,基于e c h o 的应用程序被用来创建处理复 杂的交互式页面。 ( 4 ) 阐述了s p n n g + h i b e r n a t e 整合框架的概念和特点。s p r i n g 是一个轻量级的 j 2 e e 应用开发框架,它实现了真正的逻辑层和w e b 层的分离,为j 2 e e 轻 量级解决方案提供自底至顶的全面基础设施支持。h i b e r n a t e 是一种比较彻底 的j a v a 对象映射工具。它可以直接映射大部分的j a v a b e a n 而不需要对它们 作任何修改,将一个用户定义的多个类的实例映射到一张表的同一行,利用 代理模式来简化载入类的过程。利用h i b e r n a t e 可以大量节约开发时间和开 发成本。 ( 5 ) 以远程医疗诊断为实例介绍基于e c h o + s p r i n g + h i b e r n a t e 的具体实现,并讨 论了电子病历系统的研究和应用状况,说明了远程诊断系统的实施过程。 砸) 最后在总结全文的基础上,提出了若干有待进一步深入研究和探索的问题。 关键字:j 2 e e 框架,e c h o ,s p r i n g ,h i b e r n a t e ,远程医疗系统 a b s t r a c t w i t ht h e d e v e l o p m e n t o fi n t e r n e tb u s i n e s sa n d i n c r e a s i n gr e q u i r e m e n t o f n e t w o r k b a n d w i d t h ,w i d eb a n dh a sb e c o m e s t h ee m p h a s i so f c o n s t r u c t i n gi n f o r m a t i o n e x p r e s s w a y w i d ec i t yb a n d ( w c b ) p r o v i d e sh i g h - s p e e d b u s i n e s s p l a t f o r m f o r t e l e m e d i c i n e w ed e s i g nar e m o t ed i a g n o s es y s t e mw i t l lw e bt e c h n o l o g y , w h i c hi s u n d o u b t e d l yd o m i n a n ti n i n f o r m a t i o np l a t f o r m s r a p i dd e v e l o p m e n to fc o m p u t e r t e c h n o l o g ya n d n e t w o r k t e c h n o l o g yp r o v i d e sd e p e n d a b l eg u a r a n t e e f o rb u i l d i n gh i g h q u a l i t ye m i ss y s t e m t h em a i n a s p e c t so f t h ea r t i c l ei n c l u d e : ( 1 ) t oi n t r o d u c et h ec o n c e p ta n ds t r u c t u r eo fj 2 e e f r a m e w o r kw h i c hi n c l u d ef o u r t i e rs t r u c t u r e s :c l i e n tt i e r , w e bt i e r , b u s i n e s st i e ra n de n t e r p r i s ei n f o r m a t i o n s y s t e m t i e r i te x p l a i n st h er e l a t i o n sa m o n gt h e s ef o u rt i e r s ( 2 ) b yd i s c u s s i n gt h ec h a r a c t e r , a r c h i t e c t u r e ,m a i nc o n c e p ta n da p p l i c a t i o nf i e l do f t h eu n i o nm o d e ll a n g u a g e u m lw ec a nd r a wac o n c l u s i o nt h a tu m li sa d a p t t od e s c r i b ea n yl 【i n ds y s t e mb a s e do n o b j e c t o r i e n t e dt e c h n o l o g ya n di tc a nu s e d i nd i f f e r e n t p h a s e s i n s y s t e md e v e l o p i n g f r o m r e q u i r e m e n ts p e c i f i c a t i o n d e s c r i p t i o nt ot e s t i n ga n d m a i n t a i na f t e rf i n i s h e dt h es y s t e m ( 3 ) t h et e c h n o l o g yc o n c e p ta n dc h a r a c t e ro fe c h of r a m e w o r ka r ed i s c u s s e d e c h o f r a m e w o r ki n c l u d e st w o t i e r s :g r o u p w a r ef r a r n ea n da p p l i c a t i o nc o n t a i n e rf r a m e e c h oi sa p o w e r f u l s o f t w a r ef r a m e w o r kf o r d e v e l o p i n g w e ba p p l i c a t i o n t e c h n i q u eb a s e do np a g el a y o u tu s e dt o s e tu pa b u n d a n tc o n t e n tp a r ti nt h e w e b s i t e a p p l i c a t i o nb a s e d o ne c h ou s e dt oc r e a t ec o m p l i c a t e di n t e r a c t i v ep a g e ( t o d i s c u s st h e c o n c e p t i o n a n d s p e c i a l 哆o fs p r i n g + h i b e r n a t ec o n f o r m i t y f r a m e w o r k s p r i n gi sal i g h t w e i g h tj 2 e ea p p l i c a t i o nd e v e l o p m e n tf r a m e w o r k i t r e a l i z e sg e n u i n es e p a r a t i o nb e t w e e nl o g i ct i e ra n dw e bt i e r , w h i c hp r o v i d e sa c o m p r e h e n s i v ef o u n d a t i o ns u p p o r t f r o mb u t t o nt o t i p f o rj 2 e el i g h t w e i g h t r e s o l v i n gp r o j e c t h i b e r n a t ei sar e l a t i v e l yt h o r o u g ho b j e c tm a p p i n g t o o lf o r j a v a a n di tc a nm a pt h eg r e a tm a s so fj a v a b e a n sd i r e c t l yw i t h o u tc h a n g i n gt h e m h i b e r n a t ec a i lm a pm u l t i - c l a s sd e f i n e db yau s e rt ot h es a n 3 er o wi nat a b l e i t u s e sa g e n tm o d et o p r e d i g e s tt h ep r o c e s so fl o a d i n gac l a s s m a k i n gu s eo f i i h i b e r n a t ec a l le c o n o m i z eal o to f d e v e l o p i n g t i m ea n dc o s t ( 5 ) t h ed i s s e r t a t i o ng i v e s a l l e x a m p l ef o rt e l e m e d i c i n e t oi n t r o d u c eam a t e r i a l i m p l e m e n t b a s e do n e c h o ,s p r i n ga n d h i b e r n a t ef r a m e w o r k t h ec u r r e n ts i t u a t i o n o fc o m p u t e rp a t i e n tr e c o r d ( c p r ) r e s e a r c ha n da p p l i c a t i o na r ed i s c u s s e d t h e t h e s i sa l s os h o w sh o wt oa c t u a l i z eat e l e m e d i c i n ew i t ht h et e c h n o l o g yd i s c u s s e d a b o v e ( 6 ) a t l a s tis u m m a r i z et h et h e s i sa n di m p l ys o m e p r o b l e mn e e d e dt or e s e a r c ha n d e x p l o r e i nt h ef u t u r e k e y w o r d s :j 2 e e f r a m e w o r k ,e c h o ,s p r i n g ,h i b e r n a t e ,t e l e m e d i c i n es y s t e m 1 1 1 武汉理工大学硕士学位论文 1 1 课题的研究意义 第一章绪论 当今时代信息处于飞速发展的阶段,人们已经处在数字化的生存空间之中, i n t e m e t 网构造了无限的信息资源,w e b 浏览器是获得信息、沟通世界的主要工 具,它的普及改变了企业的经营方式和服务方式。越来越多的公司、企业以及 政府希望通过利用i n t e r a c t 所提供的无地域、无国界、无时间限制的便利信息环 境来开发自己的w e b 应用。在这种情况下,基于j 2 e e ( j a v a2e n t e r p r i s ee d i t i o n ) 平台的e c h o 、s p r i n g 、h i b e r n a t e 构架的w e b 应用应运而生,它通过应用服务器 端组件的形式,封装了业务处理逻辑,提高了程序的可重用性和可扩展性。 目前在我国专家系统行业中,很少有使用基于e c h o 、s p r i n g 、h i b e r n a t e 框 架的w e b 服务实现具有分布式特点的医学临床诊断系统,特别是在线中西医结 合诊断更是这一领域中的空白。本课题的目的就是使用基于j 2 e e 平台的e c h o 、 s p r i n g 、h i b e r n a t e 框架,利用分布式w e b 服务构架,将这套临床医学专家辅助 诊断系统应用到网络中,实现在线诊断功能,使得这套专家诊断系统能更加广 泛的应用于人们的生活当中。 1 2 课题的研究内容 在充分了解专家智能辅助诊断系统的业务流程后,以w i n d o w s2 0 0 0s e r v e r 为操作系统,a p a c h et o m c a t 作w e b 服务器,用o r a c l e 构造服务器端数据库,j a v a 作为开发语言,开发一套安全、高效、基于e c h o 、s p r i n g 、h i b e r n a t e 构架的b s 模式的在线专家智能辅助诊断系统,其内容包括: ( 1 ) 在线专家智能辅助诊断系统的业务流程; ( 2 ) 在w i n d o w s 操作系统下,t o m c a t 、j a v a 、o r a c l e 应用程序的开发; ( 3 ) 基于j 2 e e 平台下e c h o 、s p r i n g 、h i b e r n a t e 架构的应用与研究; ( 4 ) 分布式w e b 服务与w e b 应用程序的开发; ( 5 ) w i n d o w s 平台下w e b 模式的安全性能的研究。 武汉理工大学硕士学位论文 1 3 课题的来源与背景 这套临床医学专家辅助诊断系统是深圳科凌力医学软件公司从市场调研、 策划、实旖,直至第一版正式完成,历经三年开发的一套软件,已正式上市销 售。该软件原本是以w i n d o w s2 0 0 0 为开发平台,以s q l s e r v e r 2 0 0 0 为数据库管 理工具,以d e l p h i6 为主要开发工具,开发出的一套面向医生个人的单机版专 家诊断系统。后来随着局域网越来越多的应用于医院,对于单机版的诊断系统 已经不能够满足医院信息管理系统的要求,于是这套专家诊断系统升级为能够 基于局域网运行的“客户端,服务器( c 蝎) ”软件。现今,随着电子行业的飞速 发展,我们已经进入信息化的时代。网络的触角已经触及各行各业,特别是 i n t e m e t 已经进入千家万户,和人们的日常生活紧密联系在一起。这种应用于医 院内部的“c s ”模式显然使得专家系统的应用范围仅仅局限于某一个很小的范 围内,尤其影响着企业的运营模式和经营模式,显然公司原先的专家系统己不 适应现在生产经营的需要,具体表现在以下四个方面: ( 1 ) 仅限于医院内部使用,不能扩展到外部网。例如病人不能通过i n t e m e t 实现在线挂号、预约业务;医生若未安装客户端软件,则只能通过本地数据 库进行辅助诊断,不能进行远程业务数据访问。 ( 乃专家辅助诊断系统所提交的数据只能和指定的医院信息管理系统进行 数据交换、数据整合,不具有任意性。 ( 3 ) 没有根据不同的客户群体划分出不同的功能、权限,安全性低。 ( 4 ) 根本不能适应目前远程信息交换的需要,效率低。 1 4 课题的系统框构 即使用j a v a 建造一个不是很烦琐的w e b 应用程序,在构架的一开始也要考 虑很多事情。一般情况下,摆在开发者面前有很多问题,例如如何建立用户接 口、在何处处理业务逻辑、如何持久化数据等。 好的构架一般有针对性的处理某一类问题,并且能将它做好( d oo n et h i n g w e l l ) 。【1 j 然而,程序中有几个层可能需要使用特定的框架,已经完成的u i ( 用 户接口1 并不代表可以把业务逻辑和持久逻辑耦合到u i 部分。例如,开发者一 武汉理工大学硕士学位论文 般不在一个c o n t r o l l e r ( 控制器) 里面写j d b c 代码来表达业务逻辑,因为这不是控 制器应该提供的。 一个u i 控制器应该委派给其它在u i 范围之外的轻量级组件。好的框架应 该能指导代码如何分布;更重要的是,框架能把开发者从编码中解放出来,使 开发者能专心于应用程序的逻辑。【2 】 本课题采用一个整合框架的策略( 使用三种受欢迎的开源框架) :表示层应 用e c h o 框架;业务层应用s p r i n g 框架;而在持久层上则应用h i b e r n a t e 框架, 如图1 1 所示。 图1 1 框架组合示意图 3 武汉理工大学硕士学位论文 2 1j 2 e e 技术 第二章j 2 e e 架构 随着i n t e m e t 和i n t r a n e t 的普及应用,m 1 甲、h t m l 和j a v a 平台逐渐演变 成为针对客户机计算的标准,使企业在应用程序的开发方面逐渐有了规范。但 是随着当今激烈的市场竞争、电子商务日益普及和广泛的应用,企业应用开发 正面临着严峻的挑战。特别是由于在服务器、c g i 、n s a p i ( n e t s e a p es e r v e r a p i ) 和i s a p i ( i n t e m e ts e r v e ra e r ) 等多种编程和连通性模型日趋流行,极大地增加了 编程和维护的工作量。 s u n 公司推出的j 2 e e ( j a v a 2p l a t f o r me n t e r p r i s ee d i t i o n ) h 毙功地解决了上述 问题,使得企业的软件开发重新获得了新的生命力。j 2 e e 是一种利用j a v a 语言 的标准体系结构定义,利用它可以更为方便地在中间层加速分布式部署。j 2 e e 包括了企业j a v ab e a n s 、j s p 、j n d i 、j m s 、j t a 等技术。在企业开发工作中 利用这种体系结构,开发者将不必担心运行关键商务应用所需的“管道工程”, 从而可以集中精力重视商业逻辑的设计和应用的表示。因此,尤其适用于创建 基于商务服务器和客户应用的程序。【3 】 j 2 e e 是一种全新概念模型,与传统的i n t e m e t 应用系统模型相比,有着不可 比拟的优势。这种模型在j 2 s e 之上添加了大量面向企业的特性和功能,以此简 化企业解决方案的开发、部署和管理等相关复杂问题。它不仅巩固了j 2 s e 中的 许多优点,如方便存取数据库的j d b ca p i 、c o r b a 技术以及能够在i n t e m e t 应用中保护数据的安全模式等,同时还提供了对e j b 、j a v as e r v l e ta p i 、j s p ( j a v as e r v e rp a g e s ) 以及x m l 技术的全面支持。 j 2 e e 的设计目的是为了推动企业应用的开发和部署。它通过提供企业计算 环境所必需的各种服务,使得部署在j 2 e e 平台上的多层应用可以实现高可用性、 安全性、可扩展性和可靠性。计算平台支持j a v a 语言,使得基于j 2 e e 标准开发 的应用可跨平台移植,且由于j a v a 语言的安全、严格等特性,使开发者可以编 写出十分可靠的代码。j 2 e e 提供了在企业计算中需要的所有服务,且简单易用; j 2 e e 中的多数标准定义了接口,如j d i 、d b cj a v am a i l 等,可与许多厂商的 产品配合,容易得到广泛的支持;通过提供统一的开发平台,j 2 e e 降低了开发 4 武汉理工大学硕士学位论文 多层企业级应用的费用和复杂度,同时支持e j b 与现有系统集成,有良好的向 导支持打包和部署应用。j 2 e e 平台提供的多层分布式应用模型、组件重用、一 致化的安全模型以及灵活的事务控制,加快了企业应用的设计与开发,可以快 速容易地建立融合了h a t e r n e t 技术,尤其是w e b 技术的n 层( n - - t i e r s ) 结构的 分布式企业应用,也较好地解决了c s 结构所固有的可扩充性不足、可维护性 不足、安全性不足、部署麻烦等弊端。1 4 】 2 2j 2 e e 框架 一个多层的分布式应用模型意味着应用逻辑依据功能被划分成组件,并且 可以在同一个服务器或不同的服务器上安装这些组成j 2 e e 应用的不同组件。一 个应用组件应被安装在什么地方,取决于该应用组件属于多层的j 2 e e 环境中的 哪一层。1 5 这些层是客户层、w e b 层、业务层及企业信息系统层衄s ) ,如图2 1 所示。 客户端表示服务器端表示服务器端业务逻辑企业信息系统 w e b 缀务器e m 容器 i | j s p ll 印 | i j s p明 几一 j 旷一1 j a v as e r v l e th 令 e j b 厂一 j 2 e e 平台u j j 2 e e 平台一 v 图2 1j 2 e e 体系结构 从图2 1 中可以看到,尽管j 2 e e 支持四个不同的层:客户层、w e b 层、 业务层和e i s 层,但不一定要求每一层在物理上位于单独的计算机体系中。在 通常情况下,w e b 层和业务层在同一台服务器( j 2 e e 服务器) 上运行,基于这 武汉理工大学硕士学位论文 一点,这两层被认为是中间层( m i d d l et i e r ) 的子层。通常情况下j 2 e e 应用被 考虑为三层结构的应用。三层结构的应用程序可以理解为在标准的两层结构c s 模式的客户端应用程序和后端存储资源中间增加了一个多线程的应用程序服务 器。 2 ,2 ,1 客户罢( c l i e n tt i e 0 客户层用来与用户交互,并把来自系统的信息显示给用户。基于w e b 的 j 2 e e 应用,允许浏览器将w e b 网页和a p p l e t 下载到客户机器上运行。例如,运 行在诸如手持设备或车载电话上的a p p l e t 可以显示w m l 网页,这些网页由运 行在j 2 e e 服务器上的s e r v l e t 或j s p 生成。用户的w e b 测览器从w e b 层下载静 态或动态的h r m i ,、w m l 、x m l 页面。 j 2 e e 应用可以是基于w e b 的,也可以是不基于w e b 的。在一个基于w e b 的j 2 e e 应用中,用户的浏览器在客户层中运行,并从一个w e b 服务器上下载 w e b 层中的静态咖,页面或由j s p 或s e r v l e t s 生成的动态h t m l 页面。在一 个不基于w e b 的j 2 e e 应用程序中,或者一个独立客户程序,不是运行在h t m l 页面中,而是运行在其它些基于网络的系统( 比如手持设备或汽车电话) 中的 a p p l e t 程序,在客户层中运行,并在不经过w e b 层的情况下访问e j b 。根据j 2 e e 规范,j a v a b e a n 不被视为组件。 6 1 2 2 2 w e b 层( w e bt i e 0 j 2 e e 的w b b 组件可以由j s p 页面、基于w e b 的a p p l e t s 以及显示h t m l 页面的s e r v l e t s 组成。调用s e r v l e t s 或者j s p 页面的h t m l 页面在应用程序组装 时与w e b 组件打包在一起。跟客户层一样,w e b 层可以包含一个j a v a b e a n 来管 理用户输入,并将输入发送到在业务层中运行的f a b 类来处理。( 7 】 2 2 ,3 业务昙( b u s s i n e s st i e n 作为解决或满足某个特定业务领域( 比如银行、零售或金融业) 需要的逻 辑业务代码由运行在业务层的f a b 来执行。一个e n t e 平d s e b e 孤从客户程序处接 收数据,对数据进行处理( 如果需要) ,再将数据发送到企业信息系统层存储。 个e n t e r p r i s e b e a n 从存储中检索数据,并将数据送回客户程序。运行在业务层 的e n t e r p r i s e b e a n 依赖于容器来为诸如事务、生命期、状态管理、多线程及资源 6 武汉理工大学硕士学位论文 存储池提供通常非常复杂的系统级代码。业务层和w e b 层一起构成了三层j 2 e e 应用的中间层,而其它两层是客户层和企业信息系统层。i s l 2 2 4 企业信息系统层( e n t e r p r i s ei n f o r m a t i o ns y s t e mt i e r ) 企业信息系统层运行企业信息系统软件,这层包括企业基础设施系统,例 如企业资源计划( e r p ) 、大型机事务处理( m a i n f r a m et r a n s a c t i o np r o c e s s i n g ) 、 数据库系统及其它遗留信息系统( l e g a c y i n f o r m a t i o ns y s t e m s ) 。j 2 e e 应用组件 因为某种原因( 例如访问数据库) 可能需要访问企业信息系统。j 2 e e 平台的未 来版本将支持c o n n e c t o r 架构,该架构是将j 2 e e 平台连接到企业信息系统上的 一个标准a p i 。1 9 7 武汉理工大学硕士学位论文 第三章统一建模语言u m l 3 1u m l 概述 u m l 是一种标准的图形化建模语言,它是面向对象分析与设计的一种标准 表示。u m l 是一种建模语言而不是一种方法。在原理上,任何方法都应由建模 语言和建模过程两部分所构成。其中,建模语言提供的方法用于表示设计的符 号;建模过程则描述进行设计所需要遵循的步骤。标准建模语言u m l 统一了人 们可以根据所开发软件的类型、环境和条件,选用不同的建模过程。u m l 只定 义了一些图以及它们的意义。人们可以采用各种方法使用u m l 而无论方法如何 变化,这也是u m l 的最终用途为不同的领域的人们提供统一的交流标准。 无论在分析还是在设计过程当中,开发人员采取不同的方法或过程,如果递交 的设计产品都是用u m l 来描述的,这样这有利于促进相互的理解。1 1 0 1 标准建模语言u m l 的定义包括u m l 语义和u m l 表示法两个部分。元模 型为u m l 的所有元素在语法和语义上提供了简单、一致、通用的定义性说明, 使开发者在语义上取得了一致。u m l 运用元模型对语言中的基本概念、术语和 表示法给出了统一且严格的定义和说明,从而给出了各种概念的准确含义。 1 1 1 3 2u m l 使用目的 ( 1 ) u m l 易于使用,能够进行可视化建模; ( 2 ) 与具体的实现无关,可应用于任何语言平台和工具平台; ( 3 ) 与具体的过程无关,可应用于任何软件开发的过程: ( 4 ) 简单可扩展,具有扩展和专有化机制,便于扩展,无须对核心概念进行修改; ( 5 ) 为面相对象的设计与开发中涌现出的高级概念提供支持,强调软件在开发过 程中对架构、框架、模式和组件的重用; ( 6 ) 与最好的软件工程的实践经验集成; ( 7 ) 有利于面对对象工具的市场成长。【1 2 j 8 武汉理工大学硕士学位论文 3 3u m l 架构 3 3 1u m l 的层次结构 u m l 是由图和元模型组成的。图是u m l 的语法,而元模型则给出图的意 思,是u m l 的语义。u m l 的语义是定义在一个四层建模概念框架中的,其层 结构如下:i ”j ( 1 ) 元元模型层,组成u m l 的基本元素“事物”,代表要定义的所有事物; ( 2 ) 元模型层,组成了u m l 的基本元素,包括面向对象和面向组件的概念。这 一层的每一个概念都是元元模型中“事物”概念的实例: ( 3 ) 模型层,组成了u m l 的模型,这一层的每个概念都是元模型中概念的一个 实例,这一层的模型通常叫做类模型或者类型模型: ( 4 ) 用户模型层,这个层中的所有元素都是u m l 模型的例子。这一层中的每个 概念都是模型层的一个实例,也是元模型的一个实例。这一层的模型通常叫 做对象模型或实例模型。 3 3 ,2u m l 的主要内容 客观世界是一个复杂巨系统,需要从不同的角度来考察,才能真正理解这个 系统。为了能支持从不同角度来考察系统,标准建模语言u m l 定义了下列5 类、 共1 0 种模型图:【1 4 l ( 1 ) 第一类是用例图,从用户角度描述系统功能,并指出各功能的操作者, 常用在系统的需求分析阶段。它表明了开发者和用户对需求规范达成了共识。 首先,它描述了待开发系统的功能需求;其次,它将系统看作黑盒,从外部执 行者的角度来理解系统;最后,它驱动了需求分析之后各阶段的开发工作,不 仅在开发过程中保证了系统所有功能的实现,而且被用来验证和检测所开发的 系统,从而影响到开发工作的后续各个阶段和u m l 的各个模型。用例图的主要 元素是用例和执行者。 如图3 1 所示是远程医疗诊断系统用例图。图中带箭头的连线表示执行者 和用例之间的使用关系。 9 武汉理丁大学硕士学位论文 一一、 ,一申请病历j 弋j 窭) 、一 一、 f 诊断1 磊磊工蒜, 、 一,。+ f j 7 - - 、潍护痫人、医生信氲 一一,7 图3 1 远程医疗诊断系统用例图 ( 2 ) 第二类是静态图( s t a t i cd i a g r a m ) ,包括类图、对象图和包图。 其中类图描述系统中类的静态结构。不仅定义系统中的类,表示类之间的 联系如关联、依赖、聚合等也包括类的内部结构( 类的属性和操作) 。类图描 述的是一种静态关系,在系统的整个生命周期都是有效的。 类在类图上使用包含三个部分的矩形来描述,如图3 2 所示。最上面的部 分显示类的名称,中间部分包含类的属性,最下面的部分包含类的操作( 或者 说“方法”) 。 图3 2 系统的类图 1 0 武汉理工大学硕士学位论文 对象图是类图的实例,几乎使用与类图完全相同的标识。他们的不同点在于 对象图显示类的多个对象实例,而不是实际的类。一个对象图是类图的一个实 例。由于对象存在生命周期,因此对象图只能在系统某一时间段存在。 ( 3 ) 第三类是行为图( b e h a v i o rd i a g r a m ) ,描述系统的动态模型和组成对象问 的交互关系。其中状态图描述类的对象所有可能的状态以及事件发生时状态的 转移条件。通常,状态图是对类图的补充。在实用上并不需要为所有的类画状 态图,仅为那些有多个状态其行为受外界环境的影响并且发生改变的类画状态 图。 ( 4 ) 第四类是交互图0 n t e m c t i v ed i a g r a m ) ,描述对象间的交互关系。 其中顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺 序,同时显示对象之间的交互;合作图描述对象间的协作关系,合作图跟顺序 图相似,显示对象间的动态合作关系。除显示信息交换外,合作图还显示对象 以及它们之间的关系。如果强调时间和顺序,则使用顺序图;如果强调上下级 关系,则选择合作图。这两种图合称为交互图。 ( 5 ) 第五类是实现图( i m p l e m e n t a t i o nd i a g r a m ) 。 其中构件图描述代码部件的物理结构及各部件之间的依赖关系。一个部件可 能是一个资源代码部件、一个二进制部件或一个可执行部件。它包含逻辑类或 实现类的有关信息。部件图有助于分析和理解部件之间的相互影响程度。 3 4u m l 应用领域 3 4 1u m l 在不同类型系统中应用 u m l 的目标是以面向对象图的方式来描述任何类型的系统,具有很宽的应 用领域。其中最常用的是建立软件系统的模型,但同样可以用于描述非软件领 域的系统,如机械系统、企业机构或业务过程,以及处理复杂数据的信息系统、 具有实时要求的工业系统或工业过程等。总之,u m l 是一个通用的标准建模语 言,可以对任何具有静态结构和动态行为的系统进行建模。 以下是常见的u m l 应用:1 1 5 1 ( 1 ) 系统信息:对用户提供的信息进行存储、检索、交换和提交。处理存放在关 系或对象数据库中的大量具有复杂关系的数据; ( 2 ) 技术系统:处理和控制技术设备,处理特殊接1 2 1 。技术系统中一般标准软件 武汉理工大学硕士学位论文 较少。技术系统通常是实时系统; ( 3 ) 嵌入式实时系统:嵌入到其它设备硬件上执行的系统。通常是通过低级程序 进行的,需要实时支持; ( 4 ) 分布式系统:分布在一组机器上运行的系统,数据很容易从一台机器传到另 一台计算机。需要同步通信机制来确定数据完整性,通常是建立在对象机制上 的。 3 4 2u m l 在软件开发过程中的应用 u m l 适用于系统开发过程中从需求规格描述到系统完成后测试的不同阶 段。在需求分析阶段,可以用用例来捕获用户需求。通过用例建模,描述对系 统感兴趣的外部角色及其对系统( 用例) 的功能要求。分析阶段主要关心问题 域中的主要概念( 如抽象、类和对象等) 和机制,需要识别这些类以及它们相 互间的关系,并用u m l 类图来描述。为实现用例,类之间需要协作,这可以用 u m l 动态模型来描述。在分析阶段,只对问题域的对象( 现实世界的概念) 建 模,而不考虑定义软件系统中技术细节的类( 如处理用户接口、数据库、通讯 和并行性等问题的类) 。【1 5 j 3 5 本章小节 总之,标准建模语言u m l 适用于以面向对象技术来描述任何类型的系统, 而且适用于系统开发的不同阶段,从需求规格描述直至系统完成后的测试和维 护。用户在遵循增量迭代开发的原则下,完全可以根据自己所开发系统的特点, 在每次迭代的微过程( 分析、设计、实现、测试和配置) 中,灵活的选用u m l 所提供的各种图。 武汉理工大学硕士学位论文 第四章e c h o 框架概述 4 1e c h o 框架的技术概念 4 1 1e c h o 框架的定义 n e x t a p p 给出的e c h o 定义如下:“e c h o 是为了促进面向对象、事件驱动的 w e b 应用的框架。可以使开发人员从考虑创建依赖于页面的应用程序中解脱出 来,能够使用传统的面向对象和事件驱动范例来为用户接口进行编程。并且不 需要具备h t m l 、h n p 、j a v a s e r i p t 这些技术知识。” x 6 l 4 1 2e c h o 的优势 e c h ow e b 应用的主要特点是:强大的事件支持,完备的状态管理器,以及 纯j a v a 语言的开发环境。由于e c h o 的窗1 2 1 管理基于f r a m e ,因此e c h o 具有如 下优势:【1 7 l ( 1 ) 后台提交: ( 2 ) 页面可根据需要刷新; ( 3 ) 基于窗口的状态管理,而不是基于页面的状态管理。e c h o 的窗口管理基于 f r a m e ,修改其它窗口的控件后,内容马上更新: ( 4 ) 利用设计模式,可以很好的统一风格,方便后期页面修改; ( 5 ) 有大量的模板可用,并且可以自行开发控件,进行模块化开发: ( 6 ) 适合编写复杂输入、有多个子窗体的页面; f 7 ) 基于s e r v l e t 的机制,可以和现有的框架如j s p ,s t r u t s 等组合使用,取长补 短; ( 8 ) 支持i e 、o p e r a 、n e t s c a p e 等多种浏览器。 基于安全性、问题域及状态管理三个方面的原因,使用j a v a 和e c h o 来构建 w e b 应用程序,可为w e b 状态管理带来极大的便利。这是因为页面显示和确认 没有分离,它们都被封装在e c h o 类中,且这些类都是被测试过的,运行可靠。 武汉理工大学硕士学位论文 4 2e c h o 框架的组成 e c h o 框架分为两个不同的层次:组件框架和应用程序容器。 4 2 1 组件框架 组件框架提供了开发人员为创建用户接口直接使用的类。组件框架被完整 地包合于n e x t a p p e c h o 的包结构中。组件框架中,所有的组件对象都来自于 n e x t a p p e c h o c o m p o n e n t 类,组件对象可用于创建用户接1 2 1 。每个组件代表 一个用户接口的特殊类型。0 8 ( 1 ) e c h o l n s t a n c e 作为应用程序的中心,e c h o i n s t a n c e 对象代表一个e c h o 应用程序的单一用 户实例。当有一个新的用户访问e c h o 应用程序时,应用程序容器自动创建一个 新的e c h o l n s t a n c e ,并且将它存储在用户的s e r v l e t 中。在e c h o l n s t a n c e 中存储数 据,和在一个用户的h t t p s 幅s i o n 中用j s p 和s e r v l e t 程序存储数据类似,每一个 e c h o 应用程序都能为抽象的e c h o l n s t a n c e 类提供一个应用,这只需要一个简单 方法的即可,即1 n i t ( ) ,它可以初始化一个新应用程序实例的状态。i n i t ( ) 方法返 回一个代表应用程序的“初始化窗口”状态的窗口对象。被置于“初始化窗口” 组件层次被里交给浏览器窗口,通常它第一个到达应用程序。 ( 2 ) e c h o s e r v e r e c h o 的e c h o s e r v e r 类处理了几乎所有的出箱操作,例如e c h o s e r v e r 提供了 d o g e t ( ) 和d o p o s t ( ) 方法,通过将它们输入到e c h o 应用程序容器中,自动地处 理进入的请求。一个e c h o s e r v e r 应用程序的实现,是通过提供一个抽象类的 g e t e c h o i n s t a n c e ( ) 方法,将新的应用实例按需要来完成的。 ( 3 ) e v e n t s 在组件之中进行通信是通过使用事件来完成的。无论它们的状态如何改变, 组件都能够产生事件。 4 2 2 应用程序容器 应用程序容器是应用程序的用户接口和客户端w e b 浏览器之间的转换层。 应用程序容器负责将应用程序的用户接口状态转化成h r m l 及j a v a s c r i p t ,也可 以将客户端w e b 浏览器的用户输入转化成能够被应用程序处理的状态。应用程 1 4 武汉理工大学硕士学位论文 序容器包含在n e x t a p p e c h o s e r v l e t 包层次中。1 1 9 】 ( 1 ) e c h o s e r v e r e c h o s e r v e r 类源于s e r v l e t 规范的h t t p s e r v l e t 类,一个单一的e c h o s e r v e r 类 负责处理所有的对于一个特定的应用程序的客户请求。 ( 2 ) l n s t a n c e p e e r i n s t a n c e p e e r 是组件框架的e c h o l n s t a n c e 类的应用程序容器系列,它负责一 个应用程序的应用程序容器方面的所有状态。i n s t a n c e p e e r 跟踪一个单一的用户 实例组件层次的变化,并负责创建和删除必要的表示层。它还负责管理用 户输入到组件的通知,以及确定在客户端需要被更新的、在服务器端改变了的 组件。 ( 3 ) r e n d e f i n g p e e r 可视层是注册到e c h o i n s t a n c 圮的一个可视窗口的一部分,其中的每个组件 都有一个表示层。应用程序容器的e e h o l n s t a n e e 对象自动创建对等对象,其转换 过程如图4 一l 所示。 组件框架 e c h o 实例 王 窗体 工 组件面板 标签 朋网格 网格单元 文本域 墨1 标签用户接口f f 网格用户接口 嘶d c e l l 按钮 文本域用户接口l 一 按钮用户接口 图4 1 应用程序容器对等对象用来处理应用程序用户接口的 w e b 客户端转换 对等表示源于n e x t a p p f , e h o s e r v l e t c o m p o n e n t p e e r 类。c o m p o n e n t p e e r 类指 定一个方法r e n d e r (
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工厂流水加工合同范本
- 招聘演员的合同范本
- 转让公司合同范本
- 代理车险合同范本
- 设计加采购合同范本
- 深圳法律合同范本
- 个人转让门面合同范本
- 共同买货车合同范本
- 大宗企业采购合同范本
- 承包小区树木合同范本
- 《工程建设标准强制性条文电力工程部分2023年版》
- 2024年四川省南充市道鑫双语学校小升初必考题语文检测卷含答案
- 2024年昆山国创投资集团有限公司招聘笔试参考题库附带答案详解
- 【真题】2023年淮安市中考道德与法治试卷(含答案解析)
- 中国慢性肾脏病患者高血压管理指南(2023年版)解读
- TCALC 003-2023 手术室患者人文关怀管理规范
- 微创外科进展课件
- 学校幼儿园食品安全培训课件
- 水利工程中常见机电设备的基本知识
- 居家养老服务创新创业项目计划书
- 初中英语2023年中考专题训练阅读理解-记叙文篇
评论
0/150
提交评论