




已阅读5页,还剩76页未读, 继续免费阅读
(计算机软件与理论专业论文)基于strutsspringhibernate架构的价格鉴定系统的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着计算机技术的飞速发展,信息化管理呈现出蓬勃发展之势,信息化管理水平的 高低直接影响到政府部门的办公效率。长春市政府价格认证中心多年来一直采用传统的 人工管理方式管理业务,随着工作量的不断增多,人工管理的效率已经远远不能满足不 断膨胀的业务需求。因此价格认证中心希望有一款现代化办公软件来提高整个部门工作 效率。为此,本文开发了一款基于网络应用技术的价格鉴定系统,利用计算机信息技术 代替原始的手工操作技术,改变传统的管理模式,将价格鉴定工作的各个环节有机地联 系起来,提高了整个部门事务处理的速度,实现部门内信息实时化、管理规范化和信息 共享化。 本文将s t r u t s + s p r i n g + h i b e r n a t e ( s s h ) 框架整合技术应用于价格鉴定领域之中, 构建了稳定性的系统总体架构,满足了系统层次间的低耦合性、系统的可复用性、可扩 展性和可维护性的设计目标;其次,本文对目前流行的w e b 应用系统的组件结构进行了 调整,使其更加适于s s h 的架构模式,同时也满足域对象单元测试的需求,并且为了优 化系统运行性能,对领域逻辑部分以“是否依赖持久化”为原则来分配系统业务处理量, 以均衡系统各部分的网络负载量,避免系统运行可能出现的瓶颈。最后,本文细化了异 常情况处理部分,提出一种基于分层结构的异常控制模式,使系统异常控制更加流程化、 标准化、趋于规范化,提高价格鉴定系统的异常控制能力,进一步地增强系统的可靠性。 关键词:j 2 e e ;s s h ;网络负载平衡;异常控制;价格鉴定 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fn l ec o m p u t e rt e c l l i l o l o g ) r ,t l l ei n f b m 缸i o n - b a s e d m a n a g e m e mi sb e c o m i i 培m o r ep r e v a l e n t u n d o u m e d l y ,t l l ed e g r e eo ft h em f o m a t i o n - b 硒e d m a i l a g e i n e m 谢l ld 硫c t l ym n u e n c e 、o r ke m c i e n c yi 1 1t h ed e p 蜘e n t so fo u rg o v e m m e n t f o rm a n yy e a r s ,p r i c ee v a l u a t i o nd 印拙n t ( p e d ) o fc h a l l g c h u nc i t ) ,g o v e m m e n tl m s m 2 u l a g e di t sw o r k 惭mam a i l u a l 、a y w i mt h eg r o w m gq 叼n t i 够o fw o r k ,i t se f ! f i c i e n - c ) 7 谢m t h em a n u a lw a yi ss ol o wt h a ti tc 弛n o tf 砬s hs ov a s tw o r kt h e l y s ot h i sd e p 锄e n t1 0 n g s f o rt l l em o d e mo 伍c i a ls o f b a 舱t oh e l pm e md e a lw i t l lt h e s et a l s k e sa n da c c o r d i i l g l ye n _ l 珊c e i t se m c i e n c y t h e r e f o r e ,t 1 1 ew r i t e rd e v e l o p sac o n l p u t e rs y s t e m ,i l 锄e dp r i c ee v 2 l l u a t i o n m a n a g es y s t e m ( p e s ) ,b a s e do nn 咖o r ka p p l i c a t i o nt e c l l i l o l o g ) ,p e sc h a i l g e st h e 口a d i t i o n a lw o r k nm l u d e st h ew h o l en o wo fa 1 1d a i l yw o r k si np e d i tc 锄o b v i o u s l y 曲p r 0 v e 、v o ke m c i e n c y ,s 伽吨一i z et 1 1 eb u s i i l e s sn o w ,b r i n ga b o u tr e a l - t i n l ei i l f o m a t i o n 趾d s i l a r et 1 1 e m 锄o n gt h er e l a v a md e p a r t i n e m s t 1 1 ep 印e ra p p l i e ss 仃u t s + s 研n g + h i b e m a t ef r 锄e w o r ki n t e 黟a t i o nt e c l u l o l o g yi i lp r i c e e 、诅1 吼i o nf l e l d 锄db u i l d sas t a b l es 咖c t u l - eo fp e s ,w m c hm a k e sm ec o u p l i n ga m o n ga l l 1 a y e r so f “ss y s t e ml o 、e ra n de n h a i l c e si t sr e u s a b i l i t ) ,e x p a n s i b i l 时a j l dm 诎e n a n c es oa s t os a t i s 匆t h j ss y s t e m sd e s i g nt a r g e t s e c o n d l y ,t h ep a p e rm a k e s 也ea 码e c tt oc u r r e n t l y p o p u l a rw e ba p p l i c a t i o nc o n l p o n e n ts 缸1 l c t i 鹏s o 邪t ob ei n o r es u i t a b l ef o rs 臼m s + s p r i i 培+ h i b e m a t ef r a i 】w o r kp a 吮m ,a n da tt h es a m et i m es a t i s f i e st h en e e do fu m tt e s to fd o m a i l l o 场e c t t h e nt 1 缸sp a p e rc a r r i e so nt h ea s s i 孕u n e n tt ot h eb u s i l l e s sl o g i cp a r tm p e sa i l d e n c 印s u l a t ei i l t 0t 1 1 es y s t e mm o d u l eb y t l l ep 血c i p l e ,w i l i c hi s “w h e m e rt or e l yo np e r s i s t e i l c e ” 1 1 1 i sp r a c t i c ec a i lb a l a n c ee 脏c t i v e l ye v e 巧l a y e r sl o a d 锄do p t i 血z ep e s sb o t t l e n e c k o t s e ,t h ep 印e rp u t sf o r w 乏一a do fe x c 印t i o nc o 曲r o ls c h e i n ab a u s e do nm u l t i l a y e r , w 1 1 i c hm a k e se x c e p t i o nc o 劬旧1m o r es t a n d a r ds oa st ob ear e g u l a rn o wa i l dt e l l dt oac r i t e r i o n , i i n p r 0 v e s 吐l ea b i l 时t 0c o 船o l 1 ee x c e p t i o n st l l a tp e sm a ya p p e a r ,a 1 1 dt h e r e b yi t sr e l i a b i l i t ) r 、而l 】b ee n h a n c e d k e yw o r d s : j 2 e e ;s s h ;p r i c ee v a l u a t i o n ;n e t w o r kl o a db a l a n c e ;e x c 印t i o nc o i l 仃o l 独创性声明 本人郑重声明:所提交的学位论文是本人在导师指导下独立进行研究工作所取 得的成果。据我所知,除了特别加以标注和致谢的地方外,论文中不包含其他人已 经发表或撰写过的研究成果。对本人的研究做出重要贡献的个人和集体,均已在文 中作了明确的说明。本声明的法律结果由本人承担。 学位论文作者签名:孑d 、关錾日期:2 了多,易 学位论文使用授权书 本学位论文作者完全了解东北师范大学有关保留、使用学位论文的规定,即: 东北师范大学有权保留并向国家有关部门或机构送交学位论文的复印件和电子版, 允许论文被查阅和借阅。本人授权东北师范大学可以采用影印、缩印或其它复制手 段保存、汇编本学位论文。同意将本学位论文收录到中国优秀博硕士学位论文全 文数据库( 中国学术期刊( 光盘版) 电子杂志社) 、中国学位论文全文数据库( 中 国科学技术信息研究所) 等数据库中,并以电子出版物形式出版发行和提供信息服 务。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名:墨尘苤耋, 日 期:呈! ! 星:! ! 矽 学位论文作者毕业后去向: 工作单位: 通讯地址: 指导教师签名:1 叠缝 日 期:驰鳗:l :! 乡 电话: 邮编: 东北师范大学硕士学位论文 第一章引言 1 1本文研究背景 本文是以为长春市价格认证中心开发的一套b s 结构的w e b 应用系统为背景,对 s t r u t s + s p r i n g + h i b e r n a t e ( s s h ) 技术在价格鉴定系统框架构建中的应用研究。 价格鉴定,是指对司法机关办理案件中的涉案财产、物品价值进行鉴定的行政行为, 是政府价格工作的重要组成部分。价格鉴定属于政府行政职能的范畴,是司法工作中的 鉴定环节,具有流程复杂、严谨、时限性要求高等特点。价格鉴定是政府支持和促进公 平、公正、合法的市场经济环境,维护当事人合法权益的重要手段。它对维护社会稳定、 促进经济发展起到十分重要的作用。 长春市价格认证中心是隶属于长春市政府、执行价格鉴定职能的专门机构。这个单 位多年来一直采用传统的人工管理方式进行价格鉴定工作。首先,这种人工管理方式不 仅效率低,且操作流程不十分规范;有时由于鉴定结论书出具时间过长而延误法院裁决 和个人纠纷案的解决;其次,随着业务量和鉴定种类的不断增多,人工管理的速度和效 率已经不能满足不断膨胀的实际需求,同时也直接影响到了司法活动和行政执法的顺利 进行,影响到了委托方的合法权益能否及时得到保护。而且,随着信息技术的飞速发展, 信息化、网络化办公管理已成为政府、企事业单位的主要办公模式,而价格鉴定工作在 效率、速度、信息实时化、管理流程化等方面无法与其他办公系统进行高效、实时地连 接与通信;不能完全满足现代化办公条件下对实时性、网络化的需求。 因此,长春市价格认证中心提出开发一套现代化办公系统来代替手工管理方式,以 提高本单位的工作效率,减少业务差错,规范业务操作流程,同时也适应信息化、网络 化的发展需求。 在对国内价格鉴定系统的架构技术进行了解和研究时发现,大多数系统是采用 j s p + s e r v l e t + e j b ( 2 x ) 这种重量级的架构模式。采用这种架构的w e b 系统虽然解决了传 统的人工管理方式在效率、速度、信息实时化、电子化、流程化等方面的问题,但在系 统运行性能上却普遍存在着系统响应时间长、资源消耗大及组件间耦合度高等不足,导 致价格鉴定系统不能快速地生成鉴定结论和及时更新鉴定信息,也无法与其他办公系统 进行高效、实时的连接与通信,不能完全满足现代化办公条件下对实时性的要求,同时 在复用性、扩展性和可维护性等方面也都不尽如人意。 在这种情况下,本文开发了基于s s h 技术的价格鉴定系统。本文所开发的价格鉴定 系统具有以下几个突出的优点: 首先,本系统将价格鉴定工作的各个环节有机地联系起来,提高了整个中心数据处 理的速度,并实现了价格鉴定的规范化、流程化,业务数据更新实时化和信息共享化。 第二,由于本系统采用了s t r u t s 、s p r i n g 和h i b e r n a t e 三个开源轻量级框架搭建 东北师范大学硕士学位论文 系统架构,因此系统整体架构轻量、占用系统资源极小,避免了由e j b 框架导致的占用 过多系统资源、系统响应时间长的问题,系统具有较高的运行性能,比现有系统请求响 应速度和数据处理速度更快。 第三,本文对目前流行的w e b 应用系统的组件结构进行了改进,改进后的结果更加 适于s s h 架构模式,同时也满足系统各组件单独测试的要求;并且本文以“是否依赖持 久化”为原则均衡系统的业务处理量,以避免系统可能出现的运行瓶颈,从而优化系统 性能。 第四,本系统采用配置文件来管理组件对象,使组件关联能够保持松散耦合方式, 大大提高了组件可复用性、可维护性及系统的易扩展性。 此外,在开发过程中,本文细化了对异常情况的编程,构建出一种基于分层结构的 异常控制模式,使异常控制更加标准化、流程化,提高本系统的异常控制能力,进一步 增强了本系统运行的可靠性,同时这种模式更加适于大型w e b 系统开发中分层纵向的开 发方式。 本系统达到了预期的安全性、可靠性、高效性、可扩展性和易维护性、重用性的设 计目标。目前本系统经反复测试后已正式投入使用,用户反馈良好。 1 2 本文研究意义 1 本课题具有一定的应用价值和实际意义。 本文以长春市价格认证中心开发的价格鉴定系统为背景,该系统满足了用户在价格 鉴定、损失评估等各方面的功能需求,业务流程规范和业务处理速度均符合用户需求, 最终为用户提供一个服务稳定、业务处理效率高并可扩展的业务管理系统。因此,本文 具有一定的应用价值和实际意义。 2 本课题属于s s h 技术在价格鉴定领域的应用创新。 兴起于近几年的s s h 架构技术已被广泛应用在电信、银行、零售、航空、铁路、邮 政、食品、医疗等行业,但在价格鉴定领域的应用国内尚属首次,实现了s s h 技术的领 域创新。 3 本文改进了w e b 应用系统流行的组件式结构。 改进后的结构更加适于目前最新的对象持久化解决方案,更加适于网络负载的平 衡,更加有利于系统各组件的单元测试,这种结构可以为相应结构的应用系统开发所采 用。 4 本文提出了一种基于分层结构的异常控制模式。 这个模式使异常控制更加标准化、流程化,能够提高系统的异常控制能力,从而增 强系统运行的可靠性,同时这种模式更加适于大型w e b 系统开发中分层纵向的开发方式。 5 本文在s s h 技术在价格鉴定领域的成功应用,可以提供给此领域的研发人员有 意义的参考与借鉴;本系统架构采用松散式设计,接口封装粗粒度,易于系统的维护和 功能扩展,系统组件某一部分加以修改就可以实现其它领域应用系统相应部分的快速构 2 东北师范大学硕士学位论文 建。 1 3国内外研究现状 国外价格鉴定体制比较健全,制度比较完善,因此国外在价格鉴定领域方面的软件 系统比较多且丰富,已形成比较成熟的价格鉴定系统。但是价格鉴定领域的内涵、业务 及流程与国家政策、法规有很大关系,难于借鉴和应用。因此我们必须自己开发适合我 国价格鉴定法规政策的软件系统。 国内价格鉴定领域业务起步较晚,在实际工作中,原始的手工操作与价格认证系统 并存,对价格认证系统的设计与实现没有一个统一的规定,各省市都有自己的一套办法 和系统,有的一直用手工方式完成价格认证,如吉林省长春市;有的已经采用电子价格 评估系统,如云南省在2 0 0 1 年已在全省推广一套旧机动车价格评估系统【2 j 。由此可见, 在价格认证领域内价格认证的方式还存在诸多的差异。 作为一个新兴的业务领域,许多公司都投入到价格认证领域的开发与研究。这些公 司大多采用基于j s p + s e r v l e t + e j b 的重量级框架技术构建的系统架构。在实际应用中, 这些架构的系统虽然解决了传统的人工管理方式在效率、速度、信息实时化、电子化、 流程化等方面的问题,但系统表现层存在显示、业务和数据间高度耦合、业务逻辑层过 分依赖容器、内聚性强,软件系统响应时间长、资源消耗大及耦合度高等诸多问题,导 致价格鉴定工作在效率、速度、信息实时化、管理流程化等方面无法与其他办公系统进 行高效、实时地连接与通信,不能及时地进行信息更新,不能完全满足现代化办公条件 下对实时性的要求,不能准确地给出最新的价格认证结果,同时在复用性、扩展性和可 维护性等方面不尽如人意,系统的更新和维护比较困难。因此在实际开发与应用中,需 要设计一种轻量级的软件构架,以避免传统的重量级构架的诸多不足。 随着社会主义市场经济的不断完善和价格改革的进一步深化,价格鉴定工作越来越 复杂、工作量越来越大、时限性要求越来越高。司法、行政执法机关有时要求价格认证 中心在受理委托当天就出具价格鉴定结论,这种要求无论是原始的手工操作还是现有的 价格认证系统都不能很好的完成。因此,采用何种技术重新构建一个价格认证系统以解 决越来越棘手的问题成为现阶段价格认证系统研究的重点。 1 4 本文主要内容及结构安排 本文首先深入了解价格鉴定领域内涵,深入研究构建系统架构模型的设计模式及实 现系统架构模型的s s h 框架技术,然后将s s h 技术引入到价格鉴定系统架构的构建中, 从而保证系统总体架构具备良好的稳定性,实现系统层次结构的低耦合性,同时提高系 统的复用性、扩展性和可维护性;在此过程中,本文为了s s h 技术更好地引入,对目前 流行的w e b 应用组件结构进行调整,在系统组件间以“是否依赖持久化”为划分原则对 系统领域逻辑进行分配,以优化系统网络负载使网络负载量更加平衡。此外,本文还提 东北9 币范大学硕士学位论文 出了一个基于多层架构的异常控制模式,使异常控制更加标准化、流程化,提高系统的 异常控制能力,从而增强系统的可靠性。 本文具体内容安排如下: 第一章:引言;主要概述价格鉴定领域的重要性,网络化。电子化管理趋势下价格 鉴定领域工作所面临的问题,引出本文的研究背景和研究意义,探讨了国内外价格鉴定 系统的研究现状,以及对本文所要解决的问题和内容安排等进行了阐释。 第二章:系统架构技术研究;对构建本系统的关键技术进行细致深入的研究,包括 w e b 应用体系结构,设计模式及i o c 模式和m v c 模式,框架技术及三个j 2 e e 轻量级框架 s t r u t s ,s p r i n g 和h i b e r n a t e ,并着重阐述了这些设计模式和框架技术对本系统的开发 所起到的关键作用,为本课题研究提供足够的技术基础。 第三章:价格鉴定系统需求分析;根据价格鉴定领域内涵、用户需求进行分析,将 软件计划阶段所确定的软件范围逐步细化到可详细定义的逻辑模型,包括系统的功能结 构图、功能流转模型及附带的具体功能说明,从而为解决系统详细设计阶段涉及的领域 相关问题给出清晰、有条理的思路。 第四章:价格鉴定系统的设计与建模;为了搭建本系统架构,首先对目前广泛流行 的应用组件结构进行调整,设计模式定位,然后引入s s h 框架技术,构建了基于s s h 技 术的系统整体架构;完成领域建模,底层数据源设计,以及为了优化系统性能进行了安 全性和可靠性方面的详细设计。 第五章:价格鉴定系统的实现及性能评价;给出价格鉴定系统关键部分的代码实现, 详细阐述了系统重要配置文件的配置过程;然后借助一个功能用例来展现本系统运行调 试后出现的结果;最后,从多个方面对系统预期目标进行整体测评,验证本系统完成了 可靠性、高效性、可扩展性、完整性、良好的重用性等用户需求和目标。 第六章:总结和展望;对本系统进行全面总结,说明不足和需要进一步完善之处, 以及表明本系统需要进一步研究的工作。 4 东北师范大学硕士学位论文 第二章系统架构技术研究 2 1w 印应用体系结构 企业级应用程序架构历经了多年的发展演进,其设计思想已发生了巨大变化。回顾 其发展历程,大型机和个人计算机盛行的早期,大多数企业级应用程序采用两级体系结 构,即客户服务器结构。这个级是功能上的划分。整个系统分成两个功能块:第一级 包括软件的应用层和表现层,驻留于客户机( 客户端) 。如j s p 、s e r v l e t 所开发出的 应用主要用于第一层,运行于客户端;第二级包含数据库和服务器的组件,驻留在服务 器端,服务器端进行的操作主要是数据存储和检索。在这种两级模式中,绝大多数的应 用逻辑( 或称商业逻辑) 是在客户端。 随着w e b 应用的商业逻辑包含逐渐复杂的公式分析计算、决策支持等,使客户机越 来越不堪重负,因此将系统的商业分离出来。单独形成一部分,这样三层结构产生了。 其中层是逻辑上的划分。 三层体系结构是将整个系统划分为如图2 1 所示的结构【3 j : ( 1 ) 表现层( p r e s e n t a t i o n1 a y e r ) :包含表示代码、用户交互g u i 、数据验证。 该层用于向客户端用户提供g u i 交互,它允许用户在显示系统中输入和编辑数据,同时 系统提供数据验证功能。 ( 2 ) 业务逻辑层( b u s i n e s sl a y e r ) :包含业务规则处理代码,即程序中与业务 相关专业算法、业务政策等等。该层用于执行业务流程和制订数据的业务规则。业务逻 辑层主要面向业务应用,为表示层提供业务服务。 ( 3 ) 数据持久层( p e r s i s t e n c el a y e r ) :包含数据处理代码和数据存储代码。数 据持久层主要包括数据存取服务,负责与数据库管理系统( 如数据库) 之间的通信。 。旦r 、 日 ( 二 二 = :卜目 8 数l 数据库 l l 用、8 口 据 、。,r 一 户 8 吕。 存 日 取 r bl 、 服 务逻蜢的业务 操作 。 求;数据校 阏一 实体验:调用业 务组件完成 业务撩作 图4 1w e b 应用流行的组件结构模型 东北师范大学硕士学位论文 此组件结构的特性总结如下: ( 1 ) 组件间通过接口进行连接,接口同内部实现细节的隔离。这样组件在系统需 求客户发生变化时对接口的影响很小;组件以高内聚为原则、以特定的角色为中心封装 相关的操作方法。 ” ( 3 ) 将系统业务领域中涉及的业务概念发掘出来形成域对象模型,专用于体现系 统业务领域概念之间的关系。域对象是实体对象类型,包含了系统大部分业务逻辑。 ( 4 ) 表现层的组件u i 是响应用户请求、对页面采集的数据进行信息校验、调用业 务逻辑组件完成具体的业务操作并接受返回的结果,并结果展示在页面上。 ( 5 ) 业务逻辑层组件用于完成系统业务操作流程、事务的管理、管理业务对象之 间的依赖。 ( 6 ) 数据持久层组件d a 0 是负责业务逻辑层与数据源层之间的通信,完成数据持 久化操作。 4 2 1 2 工作流程 表现层组件u i 时刻响应客户端需求,客户端用户使用浏览器( 如i e ) 访问w e b 系 统,用户在页上的表单提交操作及某个页面的访问要求都会引起浏览器向服务器端的系 统应用发出请求,此时u i 组件拦截这些请求,然后对信息进行验证,验证通过后要交 给业务逻辑层的业务服务组件完成业务操作;业务服务组件接到u i 的数据后,通过操 纵域对象进行具体的业务操作;域对象中包含对d a 0 组件的调用,当域对象需要进行持 久化操作时它将调用d a 0 组件,最后将操作结果返回给业务服务组件,业务服务组件再 将此结果返回给u i 组件,u i 组件将调用相应的j s p 页面将结果显示在该页面上。 4 2 2 存在的缺陷 现有的组件结构存在以下几方面问题: ( 1 ) 域对象与d a 0 组件之间存在双向依赖。域对象调用d a 0 组件实现对象持久化, 如果d a o 组件的采用某个0 r m 工具的a p 工方法就需要借助域对象来完成,这样域对象与 d a 0 组件之间就存在了双向依赖。在对域对象进行关联操作时,容易在多个级联情况下 由于b u g 而造成持久化操作混乱( 如级联删除) 。 ( 2 ) 由于域对象需要依赖d a 0 组件完成业务逻辑,那么业务逻辑就与对象状态产 生耦合,这样域对象无法脱离d a 0 组件进行单独测试。通常,软件在并行开发方式下, 系统各个组件在集成测试之前需要独立进行单元测试。此结构下域对象无法完成单元测 试。同时也不利于域对象的维护和重用。 ( 3 ) 系统的大部分业务逻辑包含在域对象中,业务逻辑层包含了少量的业务逻辑, 仅起到封装作用,这就出现了业务逻辑层薄而域对象厚的现象,如果对于一个客户 端较多、信息访问量较大的w e b 系统来说,当并发访问时很容易在持久层组件上产生系 统瓶颈,很可能造成信息传输阻塞现象。 东北师范大学硕士学位论文 4 2 3 结构的改进 1 改进目标及方案 针对原有结构缺陷的研究,本文着手改进原有结构。改进后的结构将要达到三个目 标: z 使原有结构适于目前最新的对象持久化解决方案 笆 使结构更加适于面向平衡网络负载的系统结构, z 使结构更加有利于系统各组件的单元测试以增强系统的可靠性。 改进方案如下: 首先将d a 0 组件与域对象位置进行调换,业务逻辑组件不与域对象而直接与d a 0 组 件交互;然后进行系统业务逻辑划分:将整个系统的业务逻辑划分成两部分,一部分是 依赖持久化的业务逻辑,另一部分是不依赖持久化的业务逻辑。所谓依赖持久化的业务 逻辑是指在处理该业务的过程中必须显式的调用d a o 接口进行持久化否则这个业务逻辑 就无法完成。将不依赖于持久化的业务逻辑包含到域对象中,依赖持久化的业务逻辑分 配到业务逻辑层。持久层d a o 虽然位置调换了,但功能不变,仍然是负责对象的持久化。 u i 组件不参与变动。 改进后系统结构如图4 2 所示。可以看到,改进后的结构仍然是三层,四个组件, 但调用关系产生变动。 表现层业务逻辑层数据掺久层 ,。_ _ - _ _ _ ,、- _ - _ - 。、,。_ _ _ _ _ ,、_ - _ 。、,_ - _ - _ - _ _ _ - - - _ _ _ 一、。_ _ - - _ _ _ _ _ _ - _ - _ 、 u id a 0 域对象b u s i i p :露 s p n i c e 实体对象( 属 响应用户请 p h i 业务逻辑操作 对象持久化 、 性的g e t j s 矾方 求;数据技h ny 。 流程( 依赖持 操作;事务 r 7 法及不依赖持 验:调用业管理 务组件完成 久化的业务逻久化业务逻 辑,辑, 业务操作 图4 2 改进后的系统组件结构模型 2 改进后的工作流程 表现层的u 工组件完成信息的显示、响应用户请求、信息校验,然后调用业务服务 组件实现具体的操作流程。业务层的业务服务组件接收操作数据后按照该业务特定的流 程执行业务操作;对于不依赖持久化的业务逻辑,业务服务组件直接调用域对象中定义 的方法来完成;若业务流程中涉及持久化操作,则将数据对象交给数据持久层d a o 组件 完成具体的数据库操作。d a o 组件操作负责与数据库之间的通信,完成数据库连接、数 据库访问操作,将数据存储到数据库中或是从数据库读取所需要的数据,然后将结果返 回给业务服务组件。业务服务组件再将此结果返回给调用它的u i 组件。u i 组件接到这 个业务操作后的结果保存成响应信息,然后把响应信息交给转向器。该用户请求被响应, 业务操作结果被显示在下一个页面上。结束。 东北师范大学硕士学位论文 4 2 4 改进后的结构特性分析与评价 1 优点: ( 1 ) 改进后的结构层次清晰,组件间呈真正单向依赖; ( 2 ) 改进后的结构能够使域对象从中剥离出来,形成一个独立的、可移植的、完 整的、自包含的、不依赖于外部环境的域对象,这样一方面提高了域对象的重用性,另 一方面满足了域对象的独立测试需求,从而保证底层实体化对象模型的正确性; ( 3 ) 改进后的结构能够使d a o 组件采用现有对象持久化解决方案,使整体结构更 适于s s h 框架技术的引入。 ( 4 ) 改进后的结构能够使分配在各组件的业务逻辑量更加趋于平衡,使各层负载 量更加均衡,能够减轻系统性能上的瓶颈。 2 缺点 改进后的结构不象原有的组件结构那样面向对象。这时的域对象只是作为保存状态 或者传递状态使用,是一种只有数据没有包含全部行为的对象。所以采用改进后的系统 设计可能不是完全、真正的面向对象设计( 0 0 a ) 。 虽然采用改进后的结构设计仍然有不足之处,但它却解决了三大问题,即它更加适 于目前最新的对象持久化解决方案、网络负载更加平衡、增强系统的可靠性,所以利弊 权衡之后决定实施新结构。 4 3 系统框架结构设计 系统框架结构设计是本文的研究重点之一。在研究系统框架如何构建的问题时,本 文首先对设计模式进行研究,选用恰当的设计模式来构造各个层或组件的基本工作原 理;然后引入s s h 框架技术,利用框架所包含的包、类或容器完成相应部分的工作。 4 3 1 设计模式定位 设计模式是用来解决一类相关问题的通用技术,它是一种代码设计经验的总结。本 系统使用设计模式用于提高代码的可重用性、让代码更容易被他人理解、并保证代码可 靠性。 系统表现层选用m v c 设计模式。运用这个模式能够使本系统的显示、业务处理和控 制三者保持相对的独立,使它们分别担负不同的任务,有效地实现界面应用的输入、处 理和输出的解耦,使软件模块划分清晰。这种模式可以提高软件的可扩展性和可配置性。 特别适用于本文这种大型的软件开发项目。 系统持久层选用0 r m 模式。0 r m 是对象到关系的映射。在面向对象的开发中,数据 访问层最基本的数据库操作包括插入对象、删除对象、更新对象和查询对象。而这些操 作在几乎所有的项目开发中都很类似,都是把插入对象、删除对象、更新对象和查询对 象的对象级别的操作转化为底层关系数据库支持的i n s e r t 、d e l e t e 、u d d a t e 和s e l e c t 等s q l 操作。然而,如果在程序中调用j d b c 来实现这种转化的操作,我们需要面对大 量繁杂的s q l 代码,不能专注于业务逻辑的编程、开发效率非常低,而且容易出错;也 东北师范大学硕士学位论文 不利于今后的系统维护。因此本系统持久层选用0 r m 模式。 本系统表现层与业务逻辑层之间、业务逻辑层与数据持久层之间连接选用i o c 模式。 因为i o c 模式能够解决组件( 也可以是简单的j a v a 类) 之间依赖关系、配置对象生命周 期的设计模式。它将组件之间的依赖关系提取出来,由容器来集中配置。这样,各个组 件之间就不存在代码关联,解决了调用方与被调用方之间的关系问题,任何组件都可以 最大程度的得到重用。因此本系统组件( 或层) 之间关联选用i o c 模式。 4 3 2s s h 框架技术的选用 s s h 是目前业界比较流行的系统整体框架技术。s s h 是将s t r u t s ,s p r i n g 和 h i b e r n a t e 三个j 2 e e 框架整合应用在一个w e b 应用系统中【3 0 】:s t r u t s 框架应用在表现 层的框架,用于完成表示层的表现逻辑和业务逻辑,h i b e r n a t e 框架应用在数据持久化 层,实现关系数据库的对象化,s p r i n g 框架应用于各层关联,完成持久访问对象的注入 和业务逻辑的事务管理。s s h 技术充分利用了三种框架各自的优势,这三个框架都有自 己的目标领域,并且它们之间能够无缝地整合起来应用到项目开发中。 如果引入s s h 框架,能够给本系统带来如下一些优势: ( 1 ) 引入s s h 框架整合技术后,整个系统架构中包含三种框架技术,s t r u t s 框架 应用在表现层,h i b e r n a t e 框架应用在数据持久化层,s p r i n g 框架应用在层次或组件关 联,持久访问对象的注入和业务逻辑的事务管理。这样,系统三层结构中的每一层都有 一个专门的框架来维护,利用这些框架各自的功能和优点使系统各层能够更好地、更有 效率完成基础性操作。 ( 2 ) s s h 技术中的s p r i n g 框架能够实现层间或组件以松耦合的方式相互沟通,有 利于今后系统的扩展和维护。 ( 3 ) s t r u t s 框架在维护各种j s p 页面之间的关系、维护后台业务逻辑、维护表单 以及数据验证方面提供了清晰的事务模型。并且s t r u t s 目前已经发展得非常稳定和成 熟,足以支持如本文系统这样的产品级应用。 ( 4 ) h i b e r n a t e 框架的持久化a p i 能够实现高效的数据访问效率,而且提供的h q l 语句可以实现开发人员自由制定的数据库访问操作,适合随机的业务逻辑操作。 ( 5 ) 用户对系统的需求总在变化,当系统需求变动将导致实施变动的情况。因此 我们需要组件间有较低的依赖性,能够很容易地用新的实现替换原有的实现,而且单元 测试的要求也需要组件间的低耦合性。s s h 框架可以满足需求变动和实施变动需求。 ( 5 ) 因为s t r u t s ,s p r i n g 和h i b e r n a t e 三个框架都是轻量级框架,它们整合后的 框架也是轻量级的,这样不能给系统运行速度带来明显的影响,也不会占用系统过多资 源。 ( 6 ) s s h 框架技术包含了许多封装好了的组件,从而减轻了开发所编写的代码量 使开发进程能够快速、准确地进入系统的应用逻辑部分的阶段。 总的说来,s s h 框架技术给本系统的开发带来了高效能。能够保证系统总体框架的 稳定性,能够降低系统层间的耦合度,满足了系统复用性、扩展性和可维护性方面的要 2 7 东北师范大学硕士学位论文 求,提高了系统的可靠性和业务处理效率。因此本文将s s h 技术引入到系统框架建设中, 快速构建了一个多层的价格鉴定系统的完整架构。 4 3 3 基于s s h 技术的系统框架结构 引入s s h 技术的系统框架结构如图4 3 所示。 4 3 4 基于s s h 技术的系统工作流的构建 引入s s h 框架后,本系统工作流程的详细设计如图4 2 所示: 厂一表示层、墨厂一q 嗜_ 谬蜢犀、塑一持久层、 口口 :鞲: - 二= 兰兰兰= 二二圜圈夏二二二= 二二= | 憋t 二二二二= 卫翌珏团塞兰= 二二= 二= = 二二= 二二圜圈夏二二二= 二二 一t 二二二二= 卫翌珏团苤二= 二二 图4 4 基于s s h 技术的系统整体工作流图 本系统工作流程图运行过程按从左到右顺序描述如下: 1 当客户端用户通过j s p 页面提交请求时,此时利用s 饥i t s 框架的控制器 a c t i o n s e r v l e t 接受该请求,从s 仃l l t s 的f o m l b e a n 中获取表单数据,然后在s 饥n s 的a c t i o n 中对这些数据进行数据级别和业务级别校验;验证通过后,如果请求涉及业务操作,控 制器a c t i o n 将通过工具类调用业务逻辑接口的实现类,把要进行业务操作的数据对象委 2 r 东北师范大学硕士学位论文 托给它。a c t i o n 调用的工具类中要引用对s p 血g 框架的使用以实现对业务服务组件的调 用,其中要事先在s p r 堍框架中完成业务服务接口和它的实现类的配置信息。 2 业务逻辑组件( 业务服务接口及实现类) 中管理着具体的业务对象和业务操作, 当它接到来自a c t i o n 的调用时,开始按照一定的业务流程进行业务逻辑操作。如果这个 业务请求涉及数据库访问操作,将调用持久化组件( d a o 接口及实现类) 完成数据库 操作( 如创建、更新或删除操作) 。调用持久化组件也要使用s p 血g 的配置文件,事先 在s p 血g 框架中完成d a o 接口和它的实现类的配置信息。 3 持久化组件( d a o 接口及实现类) 响应来自业务逻辑组件的数据库操作请求, 与数据源层直接进行连接,完成数据库相关的所有操作。它主要提供两方面操作:数据 持久化到数据库、获取数据库旱的数据。在d a o 实现类中包含了对h i b e m a t e 所提供的 a p i 方法( h i b e m a t e d a 0 s u p p o r t 类相关方法) 的调用。h i b e m a t e 配置文件用于配置指定 数据库使用的s q l 方言、数据库驱动、数据库连接、用户名、口令及线程、连接池数 据、连接缓存等等。h i b e m a t e 映射文件( 木h b m ) 对于完成对象属性与数据库字段之间 的关联。 4 当业务服务接口实现类完成业务操作流程后将结果返还给调用它的a c t i o n 类, a c t i o n 保存结果,跳转到相应的j s p 页面将这个结果展示在页面上。 u m l 模型图中的时序图是表现消息交换的图,它是用于体现系统消息时间顺序的 交互图。图4 5 清晰地描述了本系统执行某一行为的一组类之问如何随着时间推移相互 协作的整个过程。 iiillii 固 二丑e 国 二至亟j 图4 5 系统运行时序图 2 9 母跳 东北师范大学硕士学位论文 4 4 系统领域模型的构建 4 4 1 领域模型概述 1 领域模型定义 领域模型( d o m a i nm o d e l ) ,也称为域模型,是一个高层次的对象模型,它是对实际 问题领域的抽象表示。它专注于分析业务领域本身,发掘重要的业务领域概念,并建立 业务领域概念之间的关系【1 0 1 。 模型用来表示真实世界的实体。在软件开发过程中,领域模型是业务分析模型的一 个子集,用于帮助开发人员和领域专家理解、描述或模拟问题域中的真实实体,以使之 能够接近地反映应用系统中的业务实体【1 】。因此,领域建模是软件分析与设计过程中的 一个重要环节。 2 领域模型组成 域模型是面向对象的,由域对象及域对象之间的关系两部分组成【2 0 】: ( 1 ) 域对象 域对象是指真实世界的实体的软件抽象,它用于代表业务领域中的人、地点、事物 或概念;它是具有状态和行为的实体对象。 ( 2 ) 域对象之间关系 在域模型中,域对象之间存在四种关系。 1 ) 关联:指类之间的引用关系,分为一对一,一对多和多对多关联。 2 ) 依赖:指类之间的访问关系。 3 ) 聚集:是指整体与部分之间的关系。 4 ) 一般化:指类之间的继承关系。 3 本系统领域模型的建立 本系统首先分析和研究价格鉴定领域,在该域的语境中分解概念、捕获重要类型的 词汇术语,采用面向对象的设计方法,抽象业务实体及它们的属性、封装成类实体;然 后,捕获业务实体之问的所有联系,通过关联、继承等关系表达业务实体间的彼此联系, 利用u m l 工具构建出一个最初的、基本完整的系统域模型;迭代修改和评审该模型图, 去除可能存在的冗余属性、对象和关联,检查模型图中所有业务实体及属性是否都已经 定义、是否准确表达所有业务实体对象间的联系、确认需求等等;最终形成一种针对价 格鉴定领域的特殊的图形结构。 4 4 2 系统域对象抽取 本系统采用面向对象的设计思想,提取业务领域中的名词,抽取其状态和行为,封 装成j a v a b e a n 形式的域对象。在这里,本文以系统的核心域对象一委托书( c o 栅i s s i o n ) 为例,阐述如何设计和封装实体域对象c o m i s s i o n 的过程。 “委托书 是价格鉴定业务领域中的中心概念,其它领域概念或行为皆是从它引出 或是依附于它而生存。它是本文系统所有业务概念的“根基”。因此将“委托书”作为 3 0 东北师范大学硕士学位论文 系统域模型的中心对象。 1 委托书主键设计 首先由分析业务领域得知,委托书的标识具有唯一性的特点。因此要从业务领域名 词“委托书”中提取能够唯一标识该实体对象的属性,以使程序能区别不同的“委托书” 对象。经分析,在委托书基本信息中的“委托书编号”能够达到唯一地确定一份委托书, 而且委托书中的其余信息都不能唯一标识一份委托,那么将该信息作为委托书的唯一标 识。再进一步分析,“委托书编号 不能作为普通属性而封装在对象中,因为它是由五 个主键信息( 部门、委托种类、结论书序号、委托时间和鉴定区分) 组合而成,如长价 认车字0 7 3 1 0 0 0 1 号。上面的五个信息都是委托书的主键信息,它们的组合能够唯一标 识一份委托书,而它们中的任何一个键值都不能起到唯一标识的作用。 这种情况下,本文将这五个信息设计成复合式主键,并此复合式主键单独提出来, 封装成类,这样做一方面使业务操作方法对涉及到委托书的一系列操纵更加同步、简便、 可靠,另一方面单独封装后更加具有面向对象的设计思想。“委托书编号”类设计的 详细信息如表4 1 所示。 表4 1 “委托书编号 类详细设计表 n o 属性中文涵义属性名类型默认值说明 1 部门代号d e p a r t m e n ti n t e g e r n u l l 主键之一 2 委托种类c m s t y p ei n t e g e r n u l l 主键之一 3 结论书序号c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 醉翁亭记优翼教学课件
- 大数据能力平台技术规范汇报
- 统编版七年级语文上册 第二单元《学会记事》 同步作文写作实践
- 实验题-2023-2024学年九年化学上学期期末分类汇编(沪教版全国)原卷版
- 完形填空(解析版)-初升高英语专项提升
- 实验:探究小车速度随时间变化的规律【四大大题型】解析版-2025学年新高一物理暑假专项提升(人教版必修第一册)
- 山东省烟台市蓬莱区(五四制)2024-2025学年七年级下学期期末考试语文试卷(含答案)
- 人教版高考历史一轮复习讲义-苏联建设社会主义的实践(含解析)
- 人教版八年级英语下册专练:完形填空20篇(含答案)
- 人教版八年级英语下册重点语法过关:反身代词和情态动词(含答案)
- 马工程宪法学配套课件
- 《运用感觉器官》教案-2025-2026学年粤教粤科版(2024)小学科学二年级上册
- 关于结算培训的课件
- 交强险培训课件
- (苏教版2026新教材)三年级数学上册开学第一课
- 2025至2030光学透明聚酰亚胺薄膜行业产业运行态势及投资规划深度研究报告
- 地球的公转高中地理湘教版(2019)选择性必修一
- 九小场所消防培训
- 文物保护专项工程文明施工保证体系及措施
- 2025年中国数据库市场研究报告
- 中国卢沟桥课件
评论
0/150
提交评论