基于MVC模式的模具网络化制造平台的研究.pdf
北京工业大学硕士学位论文基于MVC模式的模具网络化制造平台的研究姓名:丁贤明申请学位级别:硕士专业:机械制造及其自动化指导教师:谢川;刘志峰20080401摘要摘要为缩短模具设计、制造周期,保证可靠的模具设计与制造品质,适应制造业网络化发展趋势,研究开发了面向模具制造业网络化制造平台。本课题由北京市模具协会和北京思奥特科技发展有限公司联合发起,主要是针对北京模具企业发展现状和实际需求而展开,目的是建立一套完整的模具资源库以及模具报价系统,并能服务于我市模具制造企业,提升其在国内外市场的核心竞争力,以满足北京地区模具企业的实际发展要求。本课题的研究开发引入了W E B 开发中主流的M V C 设计模式。并采取近年来在基于J 2 E E 的W e b 应用程序中被广泛使用的S t r u t s 和S p r i n g 开源框架集成开发J 2 E E 应用,设计开发了基于M V C 模式的模具网络化协作制造平台。本文通过对模具网络化制造系统的系统架构、数据库设计以及操作流程的研究,实现了模具企业模架库的建立以及模具报价系统的开发,并通过对系统的分层设计思想的研究实施,达到了系统解耦合的目标。使系统能更加灵活的和其他系统进行交互,并可以在以后进一步的进行完善。在系统的持久层完成关系对象映射转换,通过这种方式既满足了上层调用又能方便的为其他系统提供接口。该平台系统是在计算机支持协同工作的基础上采用J 2 E E 相关技术开发实现的。设计好的应用系统经过部署和调试,已经能够应用于具体企业。该系统具有界面友好、使用方便、安全性高等诸多优点。本文从架构、功能、开发过程中出现的典型问题以及解决方法等方面对本系统进行了详细阐述。关键词J 2 E E;M V C 模式;模具企业;网络化制造北京T 业大学下程硕十学位论文A b s t r a c tI no r d e rt os h o r t e np e r i o d i ct i m eo fm o u l dd e s i g n i n ga n dm a n u f a c t u r i n g,e n s u r er e l i a b l eq u a l i t yo fm o u l dd e s i g n i n ga n dm a n u f a c t u r i n g,a n ds u i tt on e t w o r k e dm a n u f a c t u r i n ga e n d,r e s e a r c h e da n dd e v e l o p e dn e t w o r k e dm a n u f a c t u r i n gp l a t f o r mf o rm o u l dm a n u f a c t u r e T h i st o p i ci si n i t i a t e db yB e i j i n gm o l da s s o c i a t i o na n dB e i j i n gT H R o U G H O U Ts c i e n c ea n dt e c h n o l o g yd e v e l o p m e n tl i m i t e dc o m p a n y T h i sp r o j o c tm a i n l yi sd e v e l o p e da i m e da tt h ed e v e l o p m e n tp r e s e n tc o n d i t i o na n da c t u a ln e e do fm o l db u s i n e s se n t e r p r i s ei nB e i j i n g,t h ep u r p o s eo fw h i c hi st ob u i l du pam o u l dr o s o u r c 圮sd a t a b a s es y s t e ma n dt h ef u n c t i o no f m o u l dq u o t e dp r i c et oo f f e rt h es e r v i c ef o rt h em o u l de n t e r p r i s e si nB e i j i n g I tw i l lp r o m o t et h ec o r ec o m p e t e n c i e so fe n t e r p r i s e st oc o n t e n tt h er e q u i r e m e n to fe n t e r p r i s ei nB e i j i n g T h ed e s i g n i n g,d e v e l o p i n ga n di m p l e m e n tp r o c e s so ft h en e t w o r k e dm a n u f a c t u r i n gp l a t f o r mf o rm o u l dm a n u f a c t u r ei se x p a t i a t e di nt h i sp a p e r M V Cm o d a lw h i c hh a sb e e np o p u l a r l yu t i l i z e di nt h ee x p l o i t i n go ft h ew e bb a s e do nt h es t r u c t u r eo fJ 2 E Ei su s e df o rs e v e r a ly e a r s S t r u t sa n ds p r i n gw h i c hh a sb e e nw i d e l yu s e df o rb u i l d i n gw e ba p p l i c a t i o n sb a s e dO HJ 2 E Ei su s e d T h ep l a t f o r mo f c o l l a b o r a t i v em a n u f a c t u r i n gb a s e do nM V Cm o d e lW a sp u tf o r w a r d T h r o u g ht h er e s e a r c ho ft h es y s t e ms t r u c t u r e,d a t a b a s ed e s i g no ft h es y s t e m,t h em o u l dr o s o n r o 镐d a t a b a s es y s t e ma n dt h ef u n c t i o no fm o u l dq u o t e dp r i c ew a sc o m p l e t e d A n dt h el a y e r i n go ft h es y s t e mW a sa c h i e v e dt od e c o u p l et h es y s t e m I nt h i sw a yt h es y s t e mc o u l dc o n t a c t谢mo t h e rS y s t e ma n dc o u l db ep e r f e c t e di nf u t u r e T h eO-R-M a p p i n gw a sc o m p l e t e di nt h el y r eo fd a t aa c c e s s T h es y s t e mc o u l ds a t i s f yt h er e q u i r e m e n to fo t h e rl y r e sa n dc o u l do f f e rt h ei n t e r f a c et oo t h e rs y s t e m s 殇珞p l a t f o r ms y s t e mW a se s t a b l i s h e db a s e dO i lC S C Wb yu s i n gJ 2 E E T h eM a n a g e m e n tS y s t e mw i l lb ed o n eb yd e p l o y i n ga n dd e b u g g i n g I th a sl o t so fe x c e l l e n c e,s u c ha sf r i e n d l yi n t e r f a c e,e a s yt ou s e,h i g hs e c u r i t ya n dS Oo n T h i sa r t i c l ep r e s e n t si t ss t r u c t u r e,f u n c t i o n,c h a r a c t e r i s t i ca n dt h em e t h o d sf o rt h e m K e yw o r d sJ 2 E E(J a v a2P l a t f o r mE n t e r p r i s eE d i t i o n);M V CP a t t e r n s;m o u l de n t e r p r i s e s;N e t w o r k e dm a n u f a c t u r i n gI I独创性声明本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京工业大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均己在论文中作了明确的说明并表示了谢意。签名:关于论文使用授权的说明本人完全了解北京工业大学有关保留、使用学位论文的规定,即:学校有权保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论文。(保密的论文在解密后应遵守此规定)签名:缎导师签名:日期:碰兰兰:!:第1 章绪论1 1课题来源第l 章绪论本课题由北京市模具协会和北京思奥特科技发展有限公司联合发起,思奥特科技发展有限公司是专业从事计算机系统集成和企业信息技术服务的高新技术企业。本项目将完成模具网络化制造服务平台软件系统资源库的开发工作以及模具报价子系统功能模块,为北京模具行业提供网络化制造应用服务。此外,本课题将配合北京制造业信息化工程一北京网络化制造项目的顺利进行,作为北京市网络化制造平台系统的分站点和行业应用试点,服务于我市模具制造企业。通过长期深入而广泛的市场调研,了解用户的具体需求,结合北京模具行业的特殊情况,主要面向中小型模具企业,加速使其实现制造信息化。从而达到优势互补,快速响应市场,提高企业经济效益,促进北京地区模具制造企业形成制造联盟,实现适应全球化制造的发展要求。1 2课题背景随着经济的全球化,企业间的竞争将会越来越残酷,尤其是我国加入W T O后,竞争越来越激烈。我国企业面临的市场环境由过去传统的、相对稳定的市场演变为动态的、不确定性市场,由过去主要面向国内同行的竞争演变为既要与国内同行竞争又要与国外同行竞争。企业的经营活动处于一个急速扩大的立体战略空间中,企业被推入了复杂多变的经营环境中,这种形势对企业提出了更高的要求n 1。制造业正朝着全球化、数字化和网络化方向发展,产业间和企业之间的合作与协同需求大大增强,迫切希望通过资源共享和优势互补,达到快速响应市场和降低成本的目的,作为制造业基础工业的模具业更是需求迫切幢1。北京市制造业信息化工程定位于网络化制造,它充分发挥北京在信息技术领域的优势,利用北京丰富的智力资源,形成北京网络化制造和服务体系。以网络化制造推动北京市传统制造业向数字化设计、数字化加工、数字化装备和数字化管理过渡,加强资源共享,实现北京制造业的整体升级和跨越式发展。同时,以信息化带动工业化,适应知识经济发展的需求,推动行业的经济发展,构成了北京市制造业信息化工程的需求牵引。我们近期调研中发现,由于信息不通,缺乏有效的沟通手段或信息平台,一方面,北京的很多模具企业具有承接模具制造能力,但未被客户企业充分了解,北京T 业大学T 程 面!十学位论文更没能与用户企业建立比较稳定的配套关系。另一方面,模具企业分散经营,产业松散,没能形成有效的协作关系,不能取得联合竞争优势,难于取得规模效益,致使很多国内外模具订单难于承接,被转移到了外地口1。模具行业网络化制造服务平台的构建将针对中小模具企业布局分散、企业间缺乏协作、产业链的各项资源难以合理配置整合等状态,解决目前模具行业“散、小、弱”的问题。平台实施将为降低模具制造成本,提高国内市场竞争力,解决企业技术进步能力不足,提高大型、高精度模具的设计制造能力,满足市场需求,起重要作用H 1。1 3国内外研究现状1 3 1 国外的研究和发展现状制造信息化是未来制造的必由之路,许多发达国家都非常重视制造信息化,也提出了各自的研究计划。例如“美国国家关键技术”、欧共体的“尤里卡计划”、韩国的“高级先进技术国家计划”等。这些计划提出时即以提高本国制造技术的国际竞争能力、促进经济增长和提高国家综合实力为目标,既注重技术的超前性,更重视来自产业界的实际需求:在关键技术的选择上注重系统集成技术与工艺装备研究并重,通过系统技术、信息技术和自动化技术的引入提高制造企业的竞争能力嘲。二战后,美国传统工业出现衰退阶段,产业内部很少出现重大的新技术,传统产量总体下降,世界份额同步降低,丧失世界领先的地位。但是,美国信息产业在其经济中的比重不断提高,2 0 世纪9 0 年代已成为第一支柱产业哺1。美国开始对传统产业进行信息化改造,目的在于应用新技术革命的成果,将信息技术推广到各个部门,使传统工业升为技术密集型产业,促进整个国民经济向更高层次转化。信息技术不断向传统产业的渗透,根据有关统计,在美国,9 5 以上的大型企业、8 0 以上的中型企业、6 0 以上的小型企业实现了制造业信息化,使得企业重新焕发生机。欧洲也很清楚在信息时代和网络经济时代,信息技术是决定经济上成功与否的关键因素,在德国,9 5 的大中型企业已应用了计算机系统管理。在英国,8 0 的制造业实现了信息化网络化。在法国,7 6 的机械制造企业已实现了信息化订。1 3 2 国内的研究和发展现状模具是工业生产的重要工艺装备。随着我国现代工业的发展和产品更新换代的加快,模具的需求量大幅度增加,2 0 0 3 年全国模具总产值达到4 5 0 亿元以上,第1 荦绪论年生产总量已经居世界第三位,模具工业在整个国民经济发展中的作用愈显重要。近2 0 年来,国家有关部门根据制造信息化的推进计划部署了一系列国家级重点科技项目,如8 6 3 计划、“九五”国家科技攻关计划的C A D 应用工程技术研发与应用示范、精密成形与加工技术研发和应用示等。国家科技部“十五”期间实施制造信息化工程的目标是突破一批制造信息化关键技术,形成一批具有我国自主知识产权的产品和专利。目前,我国信息化建设在基础应用方面的普及面比较广,但在重大信息工程建设方面相对落后。很多企业的信息系统仅在某些领域应用较广;而在企业所有资源优化配置的信息系统开发和应用较少;据统计,这样的信息系统在我国企业的应用效果不佳、成功例子很少。这跟很多企业管理水平的滞后有很大的联系。企业信息化的基础是企业的管理模式和运行模式。对于面向整个企业应用的信息系统,没有先进的管理理念作指导是行不通的。一般来说,管理水平高的企业,信息化水平和普及程度相对较高;管理落后的企业,信息化水平和普及程度相对较低嘲。另外,我国制造企业产品开发速度与国外存在着巨大差距。国外机电产品开发周期一般为3,-,6 个月,而我国机电产品开发周期为2 4 个月,汽车、飞机等的开发制造周期差距则更大。产品开发与更新换代慢,已经导致我国机电产品在国际市场缺乏竞争力。我国已经进入W T O,我国的企业一方面面临全球企业的挑战,另一方面也增加了参与国际合作,进入国际市场的机遇。企业快速开发和快速响应市场的能力已成为参与国际合作和竞争的关键。因此,加速模具企业的信息化进程以推进产品的快速开发对于我国制造企业是生死攸关的重大挑战1。1 4课题意义本项目将进行北京模具行业网络化制造服务平台建设及应用示范,借助先进的网络系统,实现模具网络化制造,加快新产品开发速度。北京模具行业网络化制造服务平台及模具行业的资源库,也将作为北京制造业信息化工程及网络化制造总系统的组成部分,并且以产业为基线,将区域和大企业制造资源集成,通过网络化制造应用试点,促进专业化、标准化,进一步加速原型制造、通过专业化生产、缩短模具生产周期,提高模具质量,降低模具制造成本。模具行业作为示范应用行业,在制造信息化应用领域上具有很好的前景。通过信息化制造在模具行业的应用,将辐射带动整个北京地区制造业的发展,发挥北京智力资源优势,形成北京设计、周边地区开展模具制造的应用示范,从模式上走出一条行业技术应用、实施北京制造业信息化工程的路子。北京T q k 久学T 程硕:学位论文m mi,舅皇量曼曼量置鼍量曼舅皇曼曼皇曼皇量量量量曼量舅曼曼量曼曼曼皇1 5本课题的主要研究内容本课题主要是针对北京模具企业发发展现状和实际需求而展开的,目的是建立一套完整的模具资源库以及模具报价系统,并能服务于我市模具制造企业,提升企业在国内外市场的核心竞争力,以满足模具企业的发展要求。而开发企业应用程序是一项复杂的任务,因为应用程序必须有能力为分布式网络架构上的客户提供并发服务。而且,这个应用程序必须是可伸缩性的,这样不管使用这个应用程序的客户端的数量如何增长,应用程序能继续提供可接受的性能。传统的成熟E R P 软件都是基于C S 结构的,这种结构整体性强,构件的重用性差,软件依赖于具体的操作系统,系统维护开销大,难于升级,开发成本较耐1 们。根据上述软件设计中容易出现的问题以及北京地区模具企业的实际需求本文主要做以下几个方面的工作:(1)搭建系统框架实现基于W e b 架构的多层设计,达到构件相对独立,重用性好,能够实现无缝升级,系统维护开销减到最小的设计目标。使用提供了强大的可重用的机制并且能简化应用程序功能分配过程的“模式视图控制器(M o d e l V i e w C o n t r o l l e r,M V C)设计模式。研究将此模式引入模具企业信息化系统并结合分层的w e b 架构,从而解决模具制造企业应用程序开发的实际问题。(2)设计系统层次,实现系统的松耦合设计使系统能更加灵活的和其他系统进行交互,并使系统可以在以后进一步的进行完善。在系统的持久层完成关系对象转换,以达到既方便上层调用又能方便的为其他系统提供接口的设计目的。(3)研究综合成本报价方法的报价过程并结合北京地区模具企业的实际报价过程,研究一套科学的模具计价办法并建立综合成本报价系统。同时为综合成本报价系统建立完备的权限管理和报价单管理功能,并实现报价单的审批机制。(4)建立模架资源库并且提供完善的管理功能使系统使用方便,具有友好的用户界面,系统导航力强。(5)完成用户管理模块提供了完善的用户后台管理机制,并根据北京地区模具企业的实际情况设计用户权限。并通过过滤器完成系统的用户权限管理和系统的国际化。在保证性能的前提下,使系统与用户有良好的交互性。第2 章技术路线研究2 1J 2 E E 简介第2 章技术路线研究J 2 E E(J a v a2E n t e r p r i s eE d i t i o n)是S u n 公司公布的可扩展企业应用的J a v a平台。J 2 E E 是一种利用J a v a2 平台来简化企业解决方案中的开发、部署和管理等相关问题的体系结构,是成长最快的技术应用框架,全球绝大多数的新应用是由J 2 E E 分布式应用体系支撑的。J 2 E E 是一种技术规范,是一个企业级的开发平台,它定义了整个标准的应用体系结构和一个部署环境。它由服务(S e r v i c e s)、应用程序接m(A P I)和协议构成,为各种应用程序设计和系统级别程序设计提供了丰富的功能,特别是对开发基于W e b 的多层应用提供了很强的功能支持。J 2 E E定义了整个标准的应用开发体系结构和一个部署环境,开发人员可以集中精力在如何创建业务逻辑上,而把一些通用的、很繁琐的服务端的任务交给中间件的供应商去完成,从而降低了开发应用的费用和复杂性。J 2 E E 提供了对E J B(E n t e r p r i s eJ a v a B e a n)、S e r v l e t、J S P(J a v aS e r v e rP a g e s)以及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 可扩展标记语言)技术的全面支持。J 2 E E 体系结构对于J 2 E E应用的开发越来越重要,现在,基于J 2 E E 平台,用M V C(M o d e l V i e w-C o n t r o l l e r模型视图控制器)设计模式开发的W e b 程序日渐为众多企业所接受n。J 2 E E 为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制主要有以下几个方面的优点:保留现存的I T 资产:由于企业必须适应新的商业需求,利用已有的企业信息系统方面的投资,而不是重新制定全盘方案就变得很重要。这样,一个以渐进的(而不是激进的,全盘否定的)方式建立在已有系统之上的服务器端平台机制是公司所需求的。J 2 E E 架构可以充分利用用户原有的投资,如一些公司使用的B E AT u x e d o、I B MC I C S,I B ME n c i n a,、I n p r i s eV i s i B r o k e r 以及N e t s c a p eA p p l i c a t i o nS e r v e r。这之所以成为可能是因为J 2 E E 拥有广泛的业界支持和一些重要的企业计算领域供应商的参与。每一个供应商都对现有的客户提供了不用废弃已有投资,进入可移植的J 2 E E 领域的升级途径。由于基于J 2 E E 平台的产品几乎能够在任何操作系统和硬件配置上运行,现有的操作系统和硬件也能被保留使用。高效的开发:J 2 E E 允许公司把一些通用的、很繁琐的服务端的任务交给中间件的供应商去完成。这样开发人员可以集中精力在如何创建商业逻辑上,相应地缩短了开发时间。高级中间件的供应商提供以下这些复杂的服务:状态管理服务:使开发人员写更少的代码,不用关心如何管理状态,这样能北京T 业大学T 程硕十学位论文够更快地完成程序开发。持续性服务:使开发人员不用对数据访问逻辑进行编码就能编写应用程序,能生成更轻巧,与数据库无关的应用程序,这种应用程序更易于开发与维护。分布式共享数据对象C A C H E 服务,使开发人员编制高性能的系统,极大提高整体部署的伸缩性。支持异构环境:J 2 E E 能够开发部署在异构环境中的可移植程序。基于J 2 E E的应用程序不依赖任何特定操作系统、中间件、硬件。因此设计合理的基于J 2 E E的程序只需开发一次就可部署到各种平台。这在典型的异构企业计算环境中是十分关键的。J 2 E E 标准也允许客户订购与J 2 E E 兼容的第三方的现成的组件,把他们部署到异构环境中,节省了由自己制订整个方案所需的费用。可伸缩性:企业必须要选择一种服务器端平台,这种平台应能提供极佳的可伸缩性去满足那些在他们系统上进行商业运作的大批新客户。基于J 2 E E 平台的应用程序可被部署到各种操作系统上。例如可被部署到高端U N I X 与大型机系统,这种系统单机可支持6 4 至2 5 6 个处理器。(这是N T 服务器所望尘莫及的)J 2 E E 领域的供应商提供了更为广泛的负载平衡策略。能消除系统中的瓶颈,允许多台服务器集成部署。这种部署可达数千个处理器,实现可高度伸缩的系统,满足未来商业应用的需要。稳定的可用性:一个服务器端平台必须能全天候运转以满足公司客户、合作伙伴的需要。因为I N T E R N E T 是全球化的、无处不在的,即使在夜间按计划停机也可能造成严重损失。若是意外停机,那会有灾难性后果。J 2 E E 部署到可靠的操作环境中,他们支持长期的可用性。一些J 2 E E 部署在W I N D O W S 环境中,客户也可选择健壮性能更好的操作系统如S l l l lS o l a r i s、I B MO S 3 9 0。最健壮的操作系统可达到9 9 9 的可用性或每年只需5 分钟停机时间。这是实时性很强商业系统理想的选择n 引。2 2M V C 设计模式简介M V C 是M o d e l e w C o n 仃o l l e r 的简称,即模型视图控制器。M V C 是X e r o xP A R C 在2 0 世纪8 0 年代为编程语言S m f l l t f l k 一8 0 发明的一种软件设计模式,至今已被广泛使用n 钔。M V C 设计模式最近几年被推荐为S u n 公司J 2 E E 平台的设计模式。目前大多数W e b 应用程序是基于M V C 模式来开发的,将M V C 模式应用于W e b 应用程序中时,控制器提供以下功能:接受用户端发送的与网络协议相关的请求,解析请求并转换为事务逻辑模块的输入参数,调用相应的事务逻辑模块进行处理,最后根据事务逻辑模块的处理结果调用相应的用户视图模块生成结果页面,返回至浏览器n 5 1。基于该编程模型进行开发,各个模块之间的接口一第2 荦技术路线研究旦制定,开发人员可根据模块的主要功能选用适当的技术对该模块进行有针对性的开发,且无须熟悉实现其他模块的具体技术细节,最后根据所制定的接口进行系统集成即可。它把用户界面设计、流程控制和事务逻辑进行了分离,因此适用于那些多用户的,可扩展的,可维护的,具有很高交互性的系统,可以很方便的用多个视图来显示多套数据,使系统很方便的支持其他新的客户端类型,代码重复达到最低。M V C 是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用M V C 应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务n 引。视图是用户看到并与之交互的界面。对老式的W e b 应用程序来说,视图就是由H T M L 元素组成的界面,在新式的W e b 应用程序中,H T M L 依旧在视图中扮演着重要的角色,但一些新的技术己层出不穷,它们包括M a c r o m e d i aF l a s h 和像X H T M L、X M L X S L、W M L 等一些标识语言和W e bs e r v i c e s。如何处理应用程序的界面变得越来越有挑战性。M V C 一个大的好处是它能为你的应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。模型表示企业数据和业务规则。在M V C 的三个部件中,模型拥有最多的处理任务。例如它可能用像E J B 和C o l dF u s i o nC o m p o n e n t s 这样的构件对象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击W 曲页面中的超链接和发送H T M L 表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。总结M V C 的处理过程,首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。北京T 业大学T 程硕:学位论文M V C 设计模式如图2 1 所示n 7 1:图2 1M V C 设计模式图F i g 2 1T h eD e s i g nP a t t e r no f M V C2 3M V C 框架的比较与选择2 3 1E a s y J W e b 框架E a s y J W e b 是实现中小型W e b 应用系统快速开发的简易W e b 框架。通过E a s y J W e bT o o l s 提供的配套开发工具,可以实现基于E a s y J W e b 框架的W e b 应用快速开发,包括常用应用软件的代码自生成、数据库添删改查(C R U D)代码生成、自动页面模版生成、配置文件管理等。框架不需要配置文件的支持。而采用简易的模板页面设计支持:放弃使用J S P,使用简单V e l o c i t y 脚本语言作为页面模板。并且与页面程序完全分离。实现显示页面与程序逻辑的完全分离,克服了传统J S P 页面难于维护的闯题。2 3 2T a p e s t r y 框架T a p e s t r y 是一个开源的基于S e r v l e t 的应用程序框架,它使用组件对象模型来创建动态的,交互的w e b 应用。一个组件就是任意带有j w c i d 属性的h t m l 标记。其中J W C 的意思是J a v aW e bC o m p o n e n t。T a p e s t r y 使得j a v a 代码与h t m l 完全分第2 章技术路线研究曼曼曼鼍鼍曼曼II 鼍!曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼!曼曼曼曼曼曼曼!皇曼曼曼!曼曼曼离,利用这个框架开发大型应用变得轻而易举。并且开发的应用很容易进行维护和升级。T a p e s t r y 支持本地化,其错误报告也很详细。T a p e s t r y 主要利用j a v a b e a n和x m l 技术进行开发u 8 1。2 3 3S p r i n gM V C 框架S p r i n gM V C 是结构最清晰的M V CM o d e l2 实现。它的A c t i o n 称为C o n t r o l l e r;C o n t r o l l e r 接收r e q u e s t、r e s p o n s e 参数,然后返回M o d e l A n d V i e w(其中的M o d e l 不是O b j e c t 类型,而是M a p 类型)。但在其它的W e bF r a m e w o r k 中,A c t i o n 返回值一般都只是一个V i e wN a m e;M o d e l 则需要通过其它的途径(如r e q u e s t 范围内的A t t r i b u t e、C o n t e x t 参数,或A c t i o n 本身的属性数据)传递上去。2 3 4S t r u t s 框架J a k a r t a-S t r u t s 是A p a c h e 软件组织提供的一个开源项目。是在J 2 E EW e b 层中开发的一种基于M V C 模式I I 的设计框架。它为J a v a W e b 应用提供了基于M o d e l V i e w C o n t r o l l e r 的M V C 框架,尤其适用于开发大型可扩展的W e b 应用。尽管基于J a v a 的M V C 框架层出不穷,事实上S p r i n g 的M V C 模型也提供了驱动应用系统W e b 层的能力,但J a k a r t a-S t r u t s 仍然是所有这些框架中的佼佼者。n 9】S t r u t s 由J S P、T a g l i b(自定义标签库)、S e r v l e t、B e a n s 等组件组成,应用X M L 来描述和解析信息。在S t r u t s 框架中,将常规的S e r v l e t 拆分成A c t i o n S e r v l e t、A c t i o n F o r m B e a n 和A c t i o n B e a n 三部分。控制器的任务是由A e t i o n S e r v l e t 并配合S t r u t s c o n f i g x m l 完成的,其中S t r u t s e o n f i g x m l 集中了所有操作的导航定义。视图部分是通过组合有自定义标签的J S P 技术实现的。模型组件在S t r u t s 框架中没有专门提供,但一般分为业务逻辑和系统应用状态两类,通过以下几种B e a n 的形式存在:A c t i o n F o r m(数据B e a n)、A c t i o n(逻辑B e a n)、J a v a B e a no rE J B。北京T 业大学T 程硕 j 学位论文关于S t r u t s 框架的大致结构如图2-2 所示:图2-2s t r u t s 框架结构图F i g 2-2T h eS t r u c t u r eo fS t r u t sS t r u t s 是一个基于S u nJ 2 E E 平台的M V C 框架,主要是采用S e r v l e t 和J S P技术来实现的。由于S t r u t s 能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。S t r u t s 把S e r v l e t、J S P、自定义标签和信息资源(m e s s a g er e s o u r c e s)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套M V C 模式,极大的节省了时间,所以说S t r u t s 是一个非常不错的应用框架。基于上述原因,并考虑与S p r i n g 框架的兼容以及E c l i p s e 集成开发环境对S t r u t s 框架的支持。本系统采用S t r u t s 框架。2 4S p r i n g 框架S p r i n g 是一种轻量级(大小和系统开支的角度)的J 2 E E 应用框架,它用更加轻量、更加灵活的基础设施取代了E J B。S p r i n g 是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为J 2 E E 应用程序开发提供集成的框架。它力图简化J 2 E E 开发即J 2 E Ew i t h o u tE J B 而且作为帮助企业级开发的核心支柱,S p r i n g 为模型层(o R 持久层:H i b e r n a t e、J D O、i B a t i s 等)H a 务层(E J B、J N D I、W e b S e r v i c e)以及表现层(S t r u t s、J S F、V e l o c i t y)都提供了良好的支持和集成方案圆1。第2 章技术路线研究2 5本系统中S p r i n g 框架与S t r u t s 框架的集成S t r u t s 与S p r i n g 集成最重要的一点就是改变s t r u t s c o n f i g x m l 中的A c t i o n M a p p i n g 设置,在进入S t r u t s 的A c t i o n 之前,S p r i n g 就获得了控制权。这里我们以系统的具体代码为例,展示S t m t s 与S p r i n g 集成的一般方式,这种方式的主要优点是简洁,另外S t r u t s 和S p r i n g 的耦